NAVIGATION
This shows you the differences between two versions of the page.
|
deutsch:ersetzer_rts:frontend_render:xbrowse-up-next-prev [2010/07/09 15:52] Knut Heermann (flip-flop) |
deutsch:ersetzer_rts:frontend_render:xbrowse-up-next-prev [2018/06/03 18:09] (current) |
||
|---|---|---|---|
| Line 3: | Line 3: | ||
| ====== {XBROWSE:NEXT/PREV/UP:LinkText:X} ====== | ====== {XBROWSE:NEXT/PREV/UP:LinkText:X} ====== | ||
| - | Ein erweiterter [[http://www.phpwcms-docu.de/navigations_tags_.phtml|{BROWSE:....}]] Tag, der als Linktext den Artikeltitel/Subtitel oder Kategorietitel optional ausgeben kann. Im Artikellistenmodus ist eine Schleife einstellbar, die bei PREV vom ersten zum letzten und bei NEXT vom letzten zum ersten Artikel verzweigt. Die gewohnten Einstellungen aus dem Tag [[http://www.phpwcms-docu.de/navigations_tags_.phtml|{BROWSE:....}]] können verwendet werden. | + | Ein erweiterter [[http://www.phpwcms-docu.de/navigations_tags_.phtml|{BROWSE:....}]] Tag, der als Linktext den Artikeltitel/Subtitel oder Kategorietitel optional ausgeben kann. Im Artikellistenmodus ist eine Schleife einstellbar, die bei PREV vom ersten zum letzten und bei NEXT vom letzten zum ersten Artikel verzweigt. Die gewohnten Einstellungen aus dem Tag [[http://www.phpwcms-docu.de/navigations_tags_.phtml|{BROWSE:....}]] können verwendet werden. |
| + | \\ | ||
| + | Darüberhinaus kann im Script eingestellt werden: | ||
| + | * Ein alternativer Text für den Fall das kein Link vorhanden ist | ||
| + | * die maximale Anzahl Zeichen für den Linktext | ||
| + | * anhängendes Zeichen/String wenn max. Anz. Zeichen überschritten ist | ||
| + | * Prefix/Suffix wenn kein Link generiert wurde //(Z.B. in der Einstellung :0)//. | ||
| + | |||
| + | Es werden autom. CSS Klassen generiert für die Zustände "kein Link", "erster Link" bei PREV wenn dieser verlassen wird, "letzter Link" bei NEXT wenn dieser verlassen wird, wenn zu einer Kategorie verlinkt wird. | ||
| + | |||
| + | <note important>Dieser TAG ersetzt den TAG [[deutsch/ersetzer_rts/frontend_render/xbrowse-up]]. //(Bitte nicht parallel verwenden).// </note> | ||
| + | |||
| + | \\ | ||
| ===== Beschreibung: ===== | ===== Beschreibung: ===== | ||
| Line 27: | Line 39: | ||
| \\ | \\ | ||
| + | |||
| + | ==== Paramter im Script: ==== | ||
| + | |||
| + | <code php> | ||
| + | // ************ CUSTOM VAR *********************************************** | ||
| + | |||
| + | $up_no_linktext = '--'; // +KH: if no link is available | ||
| + | $up_max_char_count = 30; // +KH: max chars in link text | ||
| + | $up_max_char_affix = '…'; // +KH: affix if > max_char_count | ||
| + | $up_prefix_no_link = '<span class="xbrowse-unolink">'; | ||
| + | $up_sufix_no_link = '</span>'; | ||
| + | |||
| + | $next_no_linktext = '--'; // +KH: if no link is available | ||
| + | $next_max_char_count = 30; // +KH: max chars in link text | ||
| + | $next_max_char_affix = '…'; // +KH: affix if > max_char_count | ||
| + | $next_prefix_no_link = '<span class="xbrowse-nnolink">'; | ||
| + | $next_sufix_no_link = '</span>'; | ||
| + | |||
| + | $prev_no_linktext = '--'; // +KH: if no link is available | ||
| + | $prev_max_char_count = 30; // +KH: max chars in link text | ||
| + | $prev_max_char_affix = '…'; // +KH: affix if > max_char_count | ||
| + | $prev_prefix_no_link = '<span class="xbrowse-pnolink">'; | ||
| + | $prev_sufix_no_link = '</span>'; | ||
| + | |||
| + | // ************ END CUSTOM VAR ******************************************* | ||
| + | </code> | ||
| + | |||
| + | \\ | ||
| + | |||
| + | ====== ====== | ||
| + | |||
| Dieser Tag kann alternativ zum eingebauten [[http://www.phpwcms-docu.de/navigations_tags_.phtml|{BROWSE:NEXT/PREV/UP:LinkText}]] eingesetzt werden. | Dieser Tag kann alternativ zum eingebauten [[http://www.phpwcms-docu.de/navigations_tags_.phtml|{BROWSE:NEXT/PREV/UP:LinkText}]] eingesetzt werden. | ||
| Line 88: | Line 131: | ||
| * "Link Text" or | or || | * "Link Text" or | or || | ||
| * = "Link Text" or "Link article title" or or "Link article subtitle" | * = "Link Text" or "Link article title" or or "Link article subtitle" | ||
| - | * off = no jump to the next/prev category if the article is the last/first one | + | * 0=off = no jump to the next/prev category if the article is the last/first one |
| - | * on = next/prev category follows last/first article | + | * 1=on = next/prev category follows last/first article |
| - | * loop = last/first article follows first/last article in list mode | + | * 2=loop = last/first article follows first/last article in list mode |
| * | * | ||
| * | * | ||
| Line 116: | Line 159: | ||
| $up_no_linktext = '--'; // +KH: if no link is available | $up_no_linktext = '--'; // +KH: if no link is available | ||
| $up_max_char_count = 30; // +KH: max chars in link text | $up_max_char_count = 30; // +KH: max chars in link text | ||
| - | $up_max_char_affix = '…'; // +KH: affix if > max_char_count | + | $up_max_char_affix = '…'; // +KH: affix if > max_char_count |
| - | $up_class_no_link = 'span'; | + | $up_prefix_no_link = '<span class="xbrowse-unolink">'; |
| + | $up_sufix_no_link = '</span>'; | ||
| $next_no_linktext = '--'; // +KH: if no link is available | $next_no_linktext = '--'; // +KH: if no link is available | ||
| Line 139: | Line 183: | ||
| // UP ========================================================== | // UP ========================================================== | ||
| - | function xget_index_link_up($linktext, $no_linktext, $max_char_count, $max_char_affix,$class_no_link) { | + | function xget_index_link_up($linktext, $no_linktext, $max_char_count, $max_char_affix,$prefix_no_link,$sufix_no_link) { |
| Line 165: | Line 209: | ||
| } | } | ||
| + | $linktext = str_replace('||','',$linktext); // +KH | ||
| + | |||
| + | // Is there any placeholder in linktext and link available? | ||
| + | if (!$link AND strpos($linktext, '|')) | ||
| + | $linktext = str_replace('|', $no_linktext, $linktext); | ||
| + | |||
| // generate the linktext | // generate the linktext | ||
| $cat_name = $GLOBALS['content']['struct'][$cat_id]['acat_name']; | $cat_name = $GLOBALS['content']['struct'][$cat_id]['acat_name']; | ||
| - | $linktext = str_replace('||','',$linktext); // +KH | ||
| $linktext = str_replace('|',((strlen($cat_name) > $max_char_count)? | $linktext = str_replace('|',((strlen($cat_name) > $max_char_count)? | ||
| - | substr($cat_name,0,$max_char_count).$max_char_affix: | + | substr($cat_name,0,$max_char_count).$max_char_affix: |
| - | $cat_name), | + | $cat_name), |
| $linktext); // +KH | $linktext); // +KH | ||
| + | |||
| + | return ($link) ? $link.$linktext.'</a>' : $prefix_no_link.$linktext.$sufix_no_link; | ||
| - | return ($link) ? $link.$linktext.'</a>' : '<'.$class_no_link.' class="xbrowse-unolink">'.$no_linktext.'</'.$class_no_link.'>'; | ||
| } | } | ||
| Line 438: | Line 488: | ||
| - | $content["all"] = preg_replace('/\{XBROWSE:UP:(.*?)\}/e','xget_index_link_up("$1",$up_no_linktext,$up_max_char_count,$up_max_char_affix,$up_class_no_link);',$content["all"]); | + | $content["all"] = preg_replace('/\{XBROWSE:UP:(.*?)\}/e','xget_index_link_up("$1",$up_no_linktext,$up_max_char_count,$up_max_char_affix,$up_prefix_no_link,$up_sufix_no_link);',$content["all"]); |
| $content["all"] = preg_replace('/\{XBROWSE:NEXT:(.*?):(0|1|2)\}/e','xget_index_link_next("$1",$2,$next_no_linktext,$next_max_char_count,$next_max_char_affix,$next_prefix_no_link,$next_sufix_no_link);',$content["all"]); | $content["all"] = preg_replace('/\{XBROWSE:NEXT:(.*?):(0|1|2)\}/e','xget_index_link_next("$1",$2,$next_no_linktext,$next_max_char_count,$next_max_char_affix,$next_prefix_no_link,$next_sufix_no_link);',$content["all"]); | ||
| $content["all"] = preg_replace('/\{XBROWSE:PREV:(.*?):(0|1|2)\}/e','xget_index_link_prev("$1",$2,$prev_no_linktext,$prev_max_char_count,$prev_max_char_affix,$prev_prefix_no_link,$prev_sufix_no_link);',$content["all"]); | $content["all"] = preg_replace('/\{XBROWSE:PREV:(.*?):(0|1|2)\}/e','xget_index_link_prev("$1",$2,$prev_no_linktext,$prev_max_char_count,$prev_max_char_affix,$prev_prefix_no_link,$prev_sufix_no_link);',$content["all"]); | ||