{{indexmenu_n>20}} ====== Article menu (count/arch/img/templ) ====== **RT like the CP Article menu, enhanced to show archived articles too, No. of displayed articles, skip X leading articles, summary word limit, one image** //(list or detail)//, **random sort order and up to 100 configurable templates. :** * Show archived articles, \\ * number of articles which can be displayed //(tag)// \\ * number of skipped articles //(tag)// \\ * and one image //(list or detail)// from article configured by **WxHxCxQ** //(tag)// \\ * word limit (999) with html rendering and allowed tags //(tag)// \\ * 0-99 simple different templates using place holder //(tag)// \\ * random article sort order //(tag)// * output archived articles // (tag)// * BBCode in titel and subtitel possible \\ **rt_article_menu_archive** V1.4 29.09.09 \\ Syntax: ##**{ARTICLE_MENU_ARCHIVE: category-ID, count-article, }**## //**(minimal:** The first two parameters must be set **+ ending comma**)// Syntax: ##**{ARTICLE_MENU_ARCHIVE: category-ID, count-article, sXX, WxHxC, tXX, rX, wXXX, aX }**## \\ // (if there are more then two parameters, don´t use an ending comma)// \\ # category-ID Articles in "category-ID" (-category-ID = the actual category), # count-article displays the the first "count-article" articles if available (0 = all articles), + sXX XX articles skipped (0 = off), + WxHxC article image output WxHxC (width x height x cropped) (cropped = 1|0), + tXX uses the layout from template No XX for output, + rX random article sort X = 0|1 (off|on), + wXXX wordlimit: output of XXX words from summary (-1 = all, 0 = no output), + aX output archived articles (X = 0 - 6, please have a look in "Parameter set - Sorting the output") [#] = required, [+] = optional \\ **Syntax example:** * **{ARTICLE_MENU_ARCHIVE: -1, 0,}** //Actual category, none of the first articles is hidden , display all articles,// * **{ARTICLE_MENU_ARCHIVE: 23, 5, s2}** //Article in category 23(ID), displays the the first five articles if available, the first two articles are skipped// * **{ARTICLE_MENU_ARCHIVE: 23, 5, s2, 100x80x0x90}** //Article in category 23(ID), displays the the first five articles if available, the first two articles are hidden, article image output 100px x 80px no cropping jpg Quality 90// * **{ARTICLE_MENU_ARCHIVE: 23, 5, s0, 50x50x1}** //Article in category 23(ID), displays the the first five articles if available, no articles skipped, article image output 50px x 50px cropped// * **{ARTICLE_MENU_ARCHIVE: 23, 5, s0, 50x50x1, t2}** //The same as before but rendered by using the template No.2 // * **{ARTICLE_MENU_ARCHIVE: 23, 5, s0, 50x50x1, t21, r1, w25, a3}** # 23 Article in category 23(ID), # 5 displays the the first five articles if available, + s0 no articles skipped, + 50x50x1 article image output 50px x 50px cropped, + t21 template No 21 selected, + r1 random article sort on, + w25 output of 25 words in summary, + a3 output archived articles (article begin > NOW AND article end > NOW) \\ The image parameter set (WxHxCxQ): %WIDTH%x%HEIGHT%x%CROP%x%QUALITY% by default this should be enough: %WIDTH%x%HEIGHTx%CROP% \\ Docu: -- \\ Forum: -- **Autor:** K.Heermann (flip-flop) http://planmatrix.de \\ **CMS version:** >= 1.4 \\ **Version:** V1.4 \\ Update: 29.09.09 KH: * max 100 configurable templates [tXX] (XX = template No. e.g.: t4 or t14 or t56...) * changed skip parameter from simple [digit] to "s[digit]" (e.g.: s3 or s6 or s13...) + random sort order parameter in tag [r0|1] (off|on) + wordlimit paramter in tag [wXXX] (XXX = 0-999 where -1 = all and 0 = off) + output archived articles in tag Update: 27.09.09 KH: + 10 configurable templates Update: 26.09.09 KH: + rendering html, allowed tags, maxchar count changed to maxword (the same like tease) Update: 25.09.09 KH: + thumb image from article list- or detail (if available) (WxHxCxQ) Update: 05.09.09 KH: + counter for "How many articles are to be shown" (0 = all) Update: 16.08.09 KH: + counter for "How many of the first articles are to be hidden" (0 = nothing hidden) Update: 10.12.09 KH: + BBCode in titel and subtitel possible \\ Based on the cp article menu. Tag: **{ARTICLE_MENU_ARCHIVE: category-ID, count-article, sXX, WxHxCxQ, tXX, rX, wXXX, aX}** \\ or **{ARTICLE_MENU_ARCHIVE: -1, count-article, sXX}** //for the actual category// \\ Minimally set: **{ARTICLE_MENU_ARCHIVE: category-ID, count-article,}** //(end with a comma !!)// Filename: **rt_article_menu_archive.php** Location: ** template/inc_script/frontend_render/ ** **Condition:** -> [[http://www.phpwcms-docu.de/conf_inc_php_en.phtml|/config/phpwcms/conf.inc.php]] \\ * ##$phpwcms['allow_ext_render'] = 1;## ---- ---- \\ ===== Inner parameters ===== ==== Parameter set ==== with default values for some tagged parameters // Sorting the output: all|archived|not archived // ------------------------------------------ // 0: all articles // 1: archive_status=1 AND article_beginNOW() // 3: archive_status=1 AND article_begin>NOW() AND article_end>NOW() // 4: archive_status=0 AND article_beginNOW() // 6: archive_status=0 AND article_begin>NOW() AND article_end>NOW() // Insert one of the previous number $alinkmenu['article_archive_status_set'] = 2; // E.g. Show entries with activated archive status? // ------------------------------------------ // Image parameters: list|detail ------------ $alinkmenu['is_image'] = 3; // 0 = off | 1 = list image | 2 = detail image // 3 = list image + link | 4 = detail image + link // Content part parameters ------------------ $alinkmenu['subtitle_on'] = 1; // Article sub title text output [0|1] $alinkmenu['headertext'] = 1; // summary text [0|1] $alinkmenu['ul'] = 3; // 1: render as unordered list / 2: render as div / // 3: render template / 4: render as table $alinkmenu['class'] = ''; // wrapped class $alinkmenu['more'] = ' »'; // more link text $alinkmenu['moretextsum'] = ' …'; // more text in summary $alinkmenu['hideactive'] = 0; // hide active article in article menu [0 = no article hide] $alinkmenu['wordlimit'] = 5; // maxwords summary [0-999 / 0 = no words / -1 = all words] $alinkmenu['allowedtags'] = ''; // allowed tags in summary $alinkmenu['leading_article_hide'] = 0; // No Artikle skipped $alinkmenu['WxHxCxQ'] = ''; // No image parameter set e.g. set 100x80x0 $alinkmenu['template_no'] = 0; // default template = 0 $alinkmenu['random'] = 0; // random sort order for article [0|1] \\ ==== Layout and image ==== Section: **Image parameters --------------------** //Images from article head: off|list[+link]|detail[+link] // $alinkmenu['is_image'] = 4; // 0 = off | 1 = list image | 2 = detail image // 3 = list image + link | 4 = detail image + link \\ Section: **TEMPLATES** for ($alinkmenu['ul'] = 3 --------------------------------------- \\ A very simple templates //(Up to 100 different templates possible)// **Tags** //(place holder)//: [LINK].....[/LINK] (the link, all between is the link text) {THUMBNAIL} (the article list- or detail image formatted like WxHxC) {TITLE} (title from the article) {SUBTITLE} (sub title from article) {SUMMARY} (the summary of the article) // Wrapper around all entries: begin, end $alinkmenu['wrap_template'] = array('
','
'); // Template No: 0 (default) ----------------- $alinkmenu['template'][0] = '
[LINK]{THUMBNAIL}[/LINK]
[LINK]{TITLE}{MORE}[/LINK]
{SUBTITLE}
{SUMMARY}
'; // Template No: 1 --------------------------- $alinkmenu['template'][1] = '
[LINK]{THUMBNAIL}[/LINK]
[LINK]{TITLE}{MORE}[/LINK]
{SUBTITLE}
{SUMMARY}
';
Please generate your own template between ##$alinkmenu['template'][**X**] = '. . . . .';## \\ where **X** is the template No. \\ E.g. **generated source from template No: 0:**
InmageName.jpg
Article-sub-title
The summary text for testing »
... ...
\\ ===== Code v1.4 ===== NOW AND article_end > NOW) 10.12.09 KH Update: + BBCode in titel and subtitel possible E.g.: [i]Title[/i] [b]Subtitle[/b] ...... V1.4 *************************************************************************************/ //article menu enhanced // {ARTICLE_MENU_ARCHIVE: category-ID, count-article, sXX, WxHxC, tXX, rX, wXXX, aX } // $catid: the category ID where the articles are (-1 = current category)) // sXX-paramter: $leading_article_hide: How many of the first articles are to be skipped // $count_article: How many articles are to be shown (0=all) // $WxHxCxQ: Image parameters %WIDTH%x%HEIGHT%x%CROP%[x%QUALITY%] // tXX -parameter: No. 0-99 different free templates (TEMPLATES for $alinkmenu['ul'] = 3) (fallback=0) // rX -parameter: [0|1] random article sort order // wXXX-parameter: No. 0-999 max. words: [-1]=all words, [0]= no words // ---------------------------------------------------------------- // obligate check for phpwcms constants if (!defined('PHPWCMS_ROOT')) { die("You Cannot Access This Script Directly, Have a Nice Day."); } // ---------------------------------------------------------------- function my_article_menu_archive ($catid = 0, $count_article, $article_skip_WxHxCxQ_template = '', $CNT_TMP = '') { // Test if the first two paramters have integer format if (!(is_intval(trim($catid)) AND is_intval(trim($count_article)) )) { echo '============================================
'; echo ' ERROR: Wrong integer parameter in {ARTICLE_MENU_ARCHIVE:...
'; echo '============================================
'; return false; } global $aktion; // User defination ============================================================ // =============== Simulated CP paramter ====================================== // TEMPLATES for $alinkmenu[ul] = 3 ------------------------------------------ // Wrapper around all entries: begin, end $alinkmenu['wrap_template'] = array('
','
'); // Template No: 0 (default) ----------------- $alinkmenu['template'][0] = '
[LINK]{THUMBNAIL}[/LINK]
[LINK]{TITLE}{MORE}[/LINK]
{SUBTITLE}
{SUMMARY}
'; // Template No: 1 --------------------------- $alinkmenu['template'][1] = '
[LINK]{THUMBNAIL}[/LINK]
[LINK]{TITLE}{MORE}[/LINK]
{SUBTITLE}
{SUMMARY}
'; // Template No: 2 -------------------------- $alinkmenu['template'][2] = '
[LINK]{THUMBNAIL}[/LINK]
[LINK]{TITLE}{MORE}[/LINK]
{SUBTITLE}
{SUMMARY}
'; // Template No: 3 -------------------------- //$alinkmenu['template'][3] = ' //
//..... //
'; // END TEMPLATES - ----------------------------------------------------------- // ContentPart head ------------------------- // Insert title/subtitle name and css for the virtual content part $virt_article_title = ''; //

MyTitle

$virt_article_subtitle = ''; //

MySubTitle

// ------------------------------------------ // Parameter set ---------------------------- // Sorting the output: all|archived|not archived // ------------------------------------------ // 0: all articles // 1: archive_status=1 AND article_beginNOW() // 3: archive_status=1 AND article_begin>NOW() AND article_end>NOW() // 4: archive_status=0 AND article_beginNOW() // 6: archive_status=0 AND article_begin>NOW() AND article_end>NOW() // Insert one of the previous number $alinkmenu['article_archive_status_set'] = 2; // E.g. Show entries with activated archive status? // ------------------------------------------ // Image parameters: list|detail ------------ $alinkmenu['is_image'] = 3; // 0 = off | 1 = list image | 2 = detail image // 3 = list image + link | 4 = detail image + link // Content part parameters ------------------ $alinkmenu['subtitle_on'] = 1; // Article sub title text output [0|1] $alinkmenu['headertext'] = 1; // summary text [0|1] $alinkmenu['ul'] = 3; // 1: render as unordered list / 2: render as div / // 3: render template / 4: render as table $alinkmenu['class'] = ''; // wrapped class $alinkmenu['more'] = ' »'; // more link text $alinkmenu['moretextsum'] = ' …'; // more text in summary $alinkmenu['hideactive'] = 0; // hide active article in article menu [0 = no article hide] $alinkmenu['wordlimit'] = 5; // maxwords summary [0-999 / 0 = no words / -1 = all words] $alinkmenu['allowedtags'] = ''; // allowed tags in summary $alinkmenu['leading_article_hide'] = 0; // No Artikle skiped $alinkmenu['WxHxCxQ'] = ''; // No image parameter set e.g. set 100x80x0 $alinkmenu['template_no'] = 0; // default template = 0 $alinkmenu['random'] = 0; // random sort order for article [0|1] /* Sorting order for "second entry" --------------------------------------------- $ao[2] = ' article_sort ASC'; $ao[2] = ' article_sort DESC'; $ao[2] = ' article_created ASC'; $ao[2] = ' article_created DESC'; $ao[2] = ' article_tstamp ASC'; $ao[2] = ' article_tstamp DESC'; $ao[2] = ' article_begin ASC'; $ao[2] = ' article_begin DESC'; $ao[2] = ' article_title ASC'; $ao[2] = ' article_title DESC'; $ao[2] = ' article_end ASC'; $ao[2] = ' article_end DESC'; $ao[2] = ' article_end DESC'; $ao[2] = ' article_priorize DESC,'.$ao[2]; -------------------------------------------- */ // Sorting order ---------------------------- $ao['2'] = ' article_priorize DESC,'; // !!! Don´t change!!! $ao['2'] .= ' article_sort ASC'; // Change for sort order // END user defination ======================================================== // ============================================================================ // CSS classes for
    and
    rendering ----------------------------------- // A very simple template (Please have a look for the {IMAGE} tag) $alinkmenu['wrap_all'] = array('
    ','
    '); // Wrap around all $alinkmenu['wrap_data'] = array('{IMAGE}
    ','
    '); // Data wrap begin, end $alinkmenu['wrap_title'] = array('
    ','
    '); // Title wrap around all begin, end $alinkmenu['wrap_subtitle'] = array('
    ','
    '); // SubTitle wrap begin, end $alinkmenu['wrap_summary'] = array('
    ','
    '); // Wrap around summary begin, end $alinkmenu['class_active_link'] = 'active_link'; // Active link class $alinkmenu["style_before"] = '
    '; // Format before every data set. $alinkmenu["style_behind"] = '
    '; // Format behind every data set. /* Example: $alinkmenu['wrap_all'] = array('
    ','
    '); // Wrap around all $alinkmenu['wrap_data'] = array('',''); // Data wrap begin, end $alinkmenu['wrap_title'] = array('
    ','
    '); // Title wrap around all begin, end $alinkmenu['wrap_subtitle'] = array('

    ','

    '); // SubTitle wrap begin, end $alinkmenu['wrap_summary'] = array('',''); // Wrap around summary begin, end $alinkmenu['class_active_link'] = 'active_link'; // Active link class $alinkmenu["style_before"] = ''; // Format before every data set. // Format behind every data set. $alinkmenu["style_behind"] = '
    '; */ // Image control if there is an empty or bad string -------------------------- // valid image parameter like WxHxCxQ ? $alinkmenu['tag_image'] = '{IMAGE}'; // place holder for the image, it must be the same you insert into CSS classes for
      and
      rendering"!! // Set the {IMAGE} place holder where you want as shown above in "CSS classes". // -------------------------------------- // A container //
      // is autom. generated around the image if there is one available //
      // -------------------------------------- // ---------------------------------------------------------------------------- // catch parameters from TAG ------------------------------ // $alinkmenu['article_archive_status_set'] = 2; // E.g. Show entries with activated archive status? // $alinkmenu['wordlimit'] = 5; // maxwords summary // $alinkmenu['leading_article_hide'] = 0; // No Artikle skiped // $alinkmenu['WxHxCxQ'] = ''; // No image parameter set e.g. set 100x80x0 // $alinkmenu['template_no'] = 0; // default template = 0 // $alinkmenu['random'] = 0; // random sort order for article [0|1] // --------------------------------------------------------- // E.g. {ARTICLE_MENU_ARCHIVE:18,8,0,50x50x1,t2,r1,w10,a3} if ( !empty($article_skip_WxHxCxQ_template) ) { $alinkmenu['temp'] = explode (",",strtolower(trim($article_skip_WxHxCxQ_template))); // === $alinkmenu['temp'][0] => first article skip // === $alinkmenu['temp'][1] => WxHxCxQ // === $alinkmenu['temp'][2] => template_No // === $alinkmenu['temp'][3] => random sort // === $alinkmenu['temp'][4] => wordlimit if ( count($alinkmenu['temp']) ) { foreach ($alinkmenu['temp'] as $value) { $value = preg_replace('/[^0-9arstwx-]/', '', $value); // WxHxCxQ and integer and t if ( preg_match('/[0-9]{1,3}x[0-9]{1,3}x[0|1]{1}/', $value) ) { // WxHxCxQ image parameter $alinkmenu['WxHxCxQ'] = $value; } elseif ( preg_match('/s{1}[0-9]{1,2}/', $value, $alinkmenu['temp1']) ) { // "sXX" skip article $alinkmenu['leading_article_hide'] = (int)substr($alinkmenu['temp1']['0'],1,2); } elseif ( preg_match('/t{1}[0-9]{1,2}/', $value, $alinkmenu['temp1']) ) { // "tXX" for template selection $alinkmenu['template_no'] = (int)substr($alinkmenu['temp1']['0'],1,2); if ( count($alinkmenu['template']) < $alinkmenu['template_no'] ) $alinkmenu['template_no'] = 0; } elseif ( preg_match('/r{1}[0|1]{1}/', $value, $alinkmenu['temp1']) ) { // "rX" for random sort order $alinkmenu['random'] = (int)substr($alinkmenu['temp1']['0'],1,1); $g = explode(',',$ao['2']); // sortierung komplett entfernen if ($alinkmenu['random'] AND count($g) == 2) {$ao['2'] = $g[0].', RAND()';} // if ($alinkmenu['random']) $ao['2'] = ' RAND(),'.$ao['2']; // sort random in DB Query } elseif ( preg_match('/w{1}[0-9-]{1,3}/', $value, $alinkmenu['temp1']) ) { // "wXXX" for wordlimit count $alinkmenu['wordlimit'] = (int)substr($alinkmenu['temp1']['0'],1,3); } elseif ( preg_match('/a{1}[0-6]{1,1}/', $value, $alinkmenu['temp1']) ) { // "aX" archived articles? $alinkmenu['article_archive_status_set'] = (int)substr($alinkmenu['temp1']['0'],1,1); } } } } // Image parameter available? if ( empty($alinkmenu['WxHxCxQ'] ) ) $alinkmenu['is_image'] = 0 ; // END Parameters from TAG -------------------------- // catid = -1: The current category is selected $alinkmenu["catid"] = ($catid < 0) ? $GLOBALS['content']['cat_id'] : $catid; // Article category-ID $alinkmenu['link'] = ''; // reserved, don´t change!!! switch($alinkmenu['article_archive_status_set']) { case 0: // article_archive_status ist not set $alinkmenu['article_archive_status'] = ' '; break; case 1: $alinkmenu['article_archive_status'] = 'AND article_archive_status=1 AND article_begin All articles output ) ($count_article <= 0) ? $count_art = -1000 : $count_art = 0; foreach($result as $value) { if( $count >= $alinkmenu['leading_article_hide'] ) { // Hide first articles? if( $count_article > $count_art ) { // Max article shown $tempRowSpan = ''; $value['article_summary'] = preg_replace('/]*?>$/i', '', $value['article_summary']); // article_summary // Summary ---------------------- if($alinkmenu['headertext'] && !empty($value['article_summary'])) { $alinkmenu['sum'] = $value['article_summary']; // Clean the text ------ if( $alinkmenu['wordlimit'] > 0 ) { $alinkmenu['sum'] = empty($alinkmenu['allowedtags']) ? strip_tags($alinkmenu['sum']) : strip_tags($alinkmenu['sum'], $alinkmenu['allowedtags']); if(!empty($alinkmenu['wordlimit'])) { $alinkmenu['sum'] = getCleanSubString($alinkmenu['sum'], $alinkmenu['wordlimit'], $alinkmenu['moretextsum'], 'word'); } } elseif ($alinkmenu['wordlimit'] == 0 ) $alinkmenu['sum'] = ''; // No Word output (-1) } else { $alinkmenu['sum'] = false; } // END Summary ------------------ // Image ------------------------- // $alinkmenu[image_array] => Array // ( // [tmpllist] => default // [tmplfull] => default // [name] => dscn0702_2048x1536.jpg // [id] => 16 // [width] => 200 // [height] => 200 // [caption] => Wiese // [zoom] => 0 // [lightbox] => 0 // [hash] => 3496e044e78343317f378925eb13bfd9 // [ext] => jpg // [list_usesummary] => 0 // [list_name] => cimg1435_2048x1536.jpg // [list_id] => 15 // [list_width] => 100 // [list_height] => 100 // [list_caption] => Tanke // [list_zoom] => 0 // [list_lightbox] => 0 // [list_maxwords] => 0 // [list_hash] => b06c6301cfa9c5d233f74c94fc22bb94 // [list_ext] => jpg // ) // mein Bild // ======= cmsimage parameter set // get segments: cmsimage.php/%WIDTH%x%HEIGHT%x%CROP%x%QUALITY%/%HASH%.%EXT% // by default this should be enough: cmsimage.php/%WIDTH%x%HEIGHT/%HASH%.%EXT% // 0 = off | 1 = list image | 2 = detail image | 3 = list image + link | 4 = detail image + link if ($alinkmenu['is_image']) { // Only if image flag is set $alinkmenu['image_array'] = unserialize( $value['article_image'] ); ( $alinkmenu['is_image'] == 2 // Is detail image set? OR $alinkmenu['is_image'] == 4 OR $alinkmenu['image_array']['list_usesummary'] == 1) ? $temp = '' : $temp = 'list_'; if (!empty($alinkmenu['image_array'][$temp.'hash'])) { $alinkmenu['image'] = LF.'
      '; if ($alinkmenu['is_image'] > 2) // image with link $alinkmenu['image'] .= ''; $alinkmenu['imageonly'] = ''; $alinkmenu['image'] .= $alinkmenu['imageonly']; if ($alinkmenu['is_image'] > 2) // image with link $alinkmenu['image'] .= ''; $alinkmenu['image'] .= '
      '.LF; } else { $alinkmenu['image'] = ''; $alinkmenu['imageonly'] = ''; } } // END Image --------------------- // ArticleTitle ------------------ $alinkmenu['title'] = render_bbcode_basics(html_specialchars($value['article_title'])); // SubTitle ---------------------- $alinkmenu['subtitle'] = (!empty($value['article_subtitle']) AND !empty($alinkmenu['subtitle_on'])) ? render_bbcode_basics(html_specialchars($value['article_subtitle'])) : ''; // set link or link with active link class -------------------- $alinkmenu['link_wrap'] = ''; if (empty($alinkmenu['hideactive']) AND ($value['article_id'] == $aktion[1])) { $alinkmenu['link_wrap'] = ''; } switch($alinkmenu['ul']) { case 1: // render as unordered list $alinkmenu['link'] .= LF.$alinkmenu["style_before"].LF; $alinkmenu['link'] .= '
    • '.LF; $alinkmenu['link'] .= $alinkmenu['wrap_data'][0].LF.$alinkmenu['wrap_title'][0].LF; $alinkmenu['link'] .= $alinkmenu['link_wrap']; $alinkmenu['link'] .= $alinkmenu['title']; $alinkmenu['link'] .= $alinkmenu['more'].''.$alinkmenu['wrap_title'][1].LF; // SubTitle ---------------------- if (!empty($alinkmenu['subtitle'])) $alinkmenu['link'] .= "\n".$alinkmenu['wrap_subtitle'][0].$alinkmenu['subtitle'].$alinkmenu['wrap_subtitle'][1]; // Summary - --------------------- if($alinkmenu['sum'] !== false) $alinkmenu['link'] .= "\n".$alinkmenu['wrap_summary'][0].LF.$alinkmenu['sum'].LF.$alinkmenu['wrap_summary'][1]; $alinkmenu['link'] .= $alinkmenu['wrap_data'][1]."
    • \n"; $alinkmenu['link'] .= LF.$alinkmenu["style_behind"].LF; break; case 2: // render as div $alinkmenu['link'] .= LF.$alinkmenu["style_before"].LF; $alinkmenu['link'] .= '
      '.LF; $alinkmenu['link'] .= $alinkmenu['wrap_data'][0].LF.$alinkmenu['wrap_title'][0].LF; $alinkmenu['link'] .= $alinkmenu['link_wrap']; $alinkmenu['link'] .= $alinkmenu['title']; $alinkmenu['link'] .= $alinkmenu['more'].''.$alinkmenu['wrap_title'][1].LF; // SubTitle ---------------------- if (!empty($alinkmenu['subtitle'])) $alinkmenu['link'] .= "\n".$alinkmenu['wrap_subtitle'][0].$alinkmenu['subtitle'].$alinkmenu['wrap_subtitle'][1]; // Summary - --------------------- if($alinkmenu['sum'] !== false) { $alinkmenu['link'] .= "\n".$alinkmenu['wrap_summary'][0].LF.$alinkmenu['sum'].LF.$alinkmenu['wrap_summary'][1]; } $alinkmenu['link'] .= $alinkmenu['wrap_data'][1]."
      \n"; $alinkmenu['link'] .= LF.$alinkmenu["style_behind"].LF; break; case 3: // render with template $alinkmenu['temp'] = $alinkmenu['template'][$alinkmenu['template_no']]; $alinkmenu['temp'] = str_replace('[LINK]' , $alinkmenu['link_wrap'] , $alinkmenu['temp']); $alinkmenu['temp'] = str_replace('[/LINK]' , '' , $alinkmenu['temp']); $alinkmenu['temp'] = str_replace('{TITLE}' , $alinkmenu['title'] , $alinkmenu['temp']); $alinkmenu['temp'] = str_replace('{SUBTITLE}' , $alinkmenu['subtitle'] , $alinkmenu['temp']); $alinkmenu['temp'] = str_replace('{MORE}' , $alinkmenu['more'] , $alinkmenu['temp']); $alinkmenu['temp'] = str_replace('{THUMBNAIL}', $alinkmenu['imageonly'] , $alinkmenu['temp']); $alinkmenu['temp'] = str_replace('{SUMMARY}' , $alinkmenu['sum'] , $alinkmenu['temp']); $alinkmenu['link'] .= $alinkmenu['temp']; $alinkmenu['temp'] = ''; break; default: // render as table // SubTitle ------------ if (!empty($alinkmenu['subtitle'])) { $tempRowSpan = ' rowspan="2"'; $alinkmenu['subtitle'] = "\n\t" .$alinkmenu['wrap_subtitle'][0].$alinkmenu['subtitle'].$alinkmenu['wrap_subtitle'][1]. "\n\n"; } // Summary - --------------------- if($alinkmenu['sum'] !== false) { $tempRowSpan = ' rowspan="3"'; $alinkmenu['sum'] = "\n\t" .$alinkmenu['wrap_summary'][0].LF.$alinkmenu['sum'].LF.$alinkmenu['wrap_summary'][1] . "\n\n"; } $alinkmenu['link'] .= "\n\t".$GLOBALS["template_default"]["article"]["link_article_sign"]."\n\t"; $alinkmenu['link'] .= ''.$alinkmenu['wrap_title'][0].$alinkmenu['link_wrap']; $alinkmenu['link'] .= $alinkmenu['title'].$alinkmenu['more'].''.$alinkmenu['wrap_title'][1]."\n\n"; $alinkmenu['link'] .= $alinkmenu['subtitle']; $alinkmenu['link'] .= $alinkmenu['sum']; } // Image tag available, only for
        and
        renderering? if (!empty($alinkmenu['tag_image'])) { $alinkmenu['link'] = str_replace($alinkmenu['tag_image'], $alinkmenu['image'], $alinkmenu['link']); } } // END if $count_art .... $count_art++; } // END if $count .... $count++; } // END foreach // mysql_free_result($result); } if($alinkmenu['link']) { switch($alinkmenu['ul']) { case 1: // render as unordered list $alinkmenu['link'] = "
          \n" . $alinkmenu['link'] . "
        \n"; break; case 2: // render as div break; case 3: // free template $alinkmenu['link'] = $alinkmenu['wrap_template']['0'].$alinkmenu['link'].$alinkmenu['wrap_template']['1']; break; default: // render as table $alinkmenu['link'] = ''."\n" . $alinkmenu['link'] . "
        \n"; } // now check if class name is given // if so wrap article menu in div if(!empty($alinkmenu['class'])) { $alinkmenu['link'] = '
        \n" . $alinkmenu['link'] . "
        \n"; } $CNT_TMP .= $alinkmenu['wrap_all'][0].LF.$virt_article_title . $virt_article_subtitle . $alinkmenu['link'].LF.$alinkmenu['wrap_all'][1].LF; } unset($alinkmenu); return $CNT_TMP; } // $content['all'] = str_replace('{ARTICLE_MENU_ARCHIVE}', my_article_menu_archive() ,$content['all']); $content["all"] = preg_replace('/{ARTICLE_MENU_ARCHIVE:(.*?),(.*?),(.*?)}/e', 'my_article_menu_archive("$1","$2","$3")', $content["all"]); ?>