Step Back Template Navigation für Pico

Möchten Sie einen Zurück-Button in jedem Beitragsverzeichnis im PICO CMS implementieren, dann lesen Sie diesen Beitrag und nutzen das folgende Coding.

home » pico » step back template navigation fuer pico cms entwickeln

Step Back Navigation

Im CMS Pico gibt es leider keine vorgefertigte Methode, um aus einer tiefen Schachtelungsebene immer eine Ebene nach oben zur root aufzusteigen. Sie können daher das folgende kleine Codeschnipsel nutzen.

007  {% set path_back = "" %}
008  {% set path_url  = current_page.id %}
009  {% set path_url  = path_url|replace({'/index': ''}) %}
010
011  {% for directory in path_url|split('/', -1) %}
012      {% set path_back = [path_back, '/', directory]|join %}
013  {% endfor %}
014        
015  {% if path_back is empty %}
016      <a class="navbar-brand text-white" href="{{base_url}}">&#187; home &#171;</a>
017  {% else %}
018      <a class="navbar-brand text-white" href="?{{path_back}}">&#187; zurück: &ensp; {{path_back}} &#171;</a>
019  {% endif %}

Code

Das Codebeispeil ermittelt ausgehend von der angezeigten Seite den aktuellen Pfad, baut daraus einen Link auf mit dessen Hilfe der Leser immer zum übergeordneten Ordner gelangen kann, bis er letztendlich auf der Startseite der Domain angelangt ist. Erläuterung

007 - Variable die die vollständige Link-URL aufnehmen wird.

008 - Diese Variable enthält den Pfad inklusive der aktuellen Seite.

009 - mach aus: pfad-0/pfad-1/index den neuen Pfad: pfad-0/pfad-1, der Substring "/index" wird durch "" (nichts) ersetzt.

011 - Iterator durch das ARRAY directory, abzüglich des Verzeichnis in dem sich der Leser aktuell befindet (daher split -1). (siehe: Twig split)

012 - Konkatiniert (siehe: Twig join) einen neuen Pfad aus allen übergeordneten Einzel-Directorys zusammen und speichert dies in der Variable path_back ab.

015 - Ist path_back leer, steht der Leser entweder im ersten Unterordner oder auch der Startseite. In beiden Fällen wird der Link zur Startseite angezeigt.

018 - Ist path_back gefüllt, so steigt der Leser mit diesem Link immer einen Ordner weiter nach oben auf.

Das Codesegment ist im Kopfbereich gut aufgehoben, damit der Leser schnell und bequem sich nach oben navigieren kann. Das Beispiel ist speziell für das CSS-Framework Bootstrap entwickelt. Wenn Sie ein anderes CSS nutzen, müssen Sie die class-Angaben entsprechend anpassen oder weg lassen.


FlightCMS
2024-01-28
PHP8
post

JavaScript - Das umfassende Handbuch. JavaScript lernen und verstehen. Inkl. objektorientierter und funktionaler Programmierung - Umfassender Einstieg in JavaScript, praktische Beispiele und eine Darstellung professioneller Techniken. Eignet sich für Anfänger, die JavaScript von Grund auf lernen, als auch für Profis, die wissen wollen, wie man moderne, dynamische Webanwendungen entwickelt. Hier finden Sie alle Techniken: Ajax, jQuery, Node.js, DOM und mehr. Neueste Trends, Techniken und Entwicklungen bis hin zur Steuerung von Microcontrollern. Objektorientierung, ECMAScript 21 und funktionale Programmierung mit praxisnahen Beispielen für sofortigen Einsatz.

Wir können mit so genannten Affiliate-Links den Betrieb der Webseite etwas unterstützen, für Sie als Leser ist das natürlich vollkommen kostenlos.

Impressum


CMSWorkbench ist ein Tec- und Entwickler-Seite, rund um die Webtechniken der Content Management Systeme.

Datenschutz


Diese Webseite nutzt keine Cookies oder sonstige Speichermechanismen, die einen Rückschluss auf das Leserverhalten zulassen.

Kontakt


Sie können mit der Redaktion oder dem Administrator via eMail unter der Adresse: Kontakt@Oliver-Lohse.de aufnehmen.