{{indexmenu_n>520}} ====== Sprung zu einem Anker ====== **Dieser RT bietet die Möglichkeit innerhalb eines Artikels zu CP-Ankern und selbst gesetzten Ankern zu springen.** **Voraussetzung:** * Anker der jedem CP autom. mit **Anker [x]** mitgegeben werden kann z.B. **%%%%** //(123 wäre die Id des CP)// \\ * Anker der mit dem TAG **{A:MeinAnker}** an irgendeiner Stelle in einem CP gesetzt werden kann (**%%%%**). \\ \\ **TAG:** * ##{GO-A:CP-ID,Linktext}## * ##{GO-A:Ankertext,Linktext}## \\ **Bedingungen im TAG:** * CP-ID: * Numerischer Wert //(Es wird autom. angenommen, dass eine ContentPart-ID gemeint ist).// * Ankername: * Ein Wort, keine Leerzeichen, keine Sonderzeichen oder Umlaute //(Es wird angenommen, dass eine gültiger Anker auf der Seite gesetzt ist).// * Linktext: * Minimale Wortlänge sind drei Zeichen Ist eine Bedingung nicht erfüllt wird ein Fehlertext im FE ausgegeben. **Der RT überprüft nicht das Vorhandensein von gültigen Sprungzielen!** **Beispiel:** **{GO-A:149,Linktext}** Linktext \\ **{GO-A:MyAnchorName,Linktext}** Linktext \\ ---- **rt_goto_anchor** V1.0 16.08.2011 Docu: -- \\ Forum: [[http://forum.phpwcms.org/viewtopic.php?p=131995]] **Autor:** K.Heermann (flip-flop) http://planmatrix.de \\ **CMS Version:** >= 1.3 \\ **Version:** V1.0 \\ Tag: -- ##{GO-A:CP-ID, Linktext}## oder ##{GO-A:Ankertext, Linktext}## Dateiname: **rt_goto_anchor.php** Verzeichnis: ** template/inc_script/frontend_render/ ** **Bedingung:** -> [[http://www.phpwcms-docu.de/config_dateien.phtml|/config/phpwcms/conf.inc.php]] \\ * ##$phpwcms['allow_ext_render'] = 1;## ---- ---- \\ ===== Code: ===== **Datei:** template/inc_script/frontend_render/rt_goto_anchor.php $2'; $content['all'] = preg_replace($mySearch, $myReplace, $content['all']); } // TAG anchor is available IF (strpos($content["all"],'class="phpwcmsAnchorLink"') !== false) { $mySearch = '/\{GO-A:([^\x7B-\xFF\s\W]+?),([\x20-\x7F]{3,})\}/is'; $myReplace = '$2'; $content['all'] = preg_replace($mySearch, $myReplace, $content['all']); } // Error output $mySearch = '/\{GO-A:(.*?)\}/is'; $myReplace = 'Anchor error: "$1"'; $content['all'] = preg_replace($mySearch, $myReplace, $content['all']); $content['all'] = str_replace('\'', ''', $content['all']); $content['all'] = str_replace('"', '"', $content['all']); } ?>