Plugin für Anzeige Inhaltsverzeichnis

home bludit plugins

Moderne Frontend-Entwicklung mit React. Alles, was Sie über React wissen müssen!   -  Welcher Frontendentwickler hat noch nicht von React gehört? Diese ursprünglich von Facebook entwickelte JavaScript-Bibliothek hat innerhalb kurzer Zeit eine steile Karriere hingelegt. Sie bildet mittlerweile eine wichtige Grundlage für viele Unternehmensanwendungen, Single Page-Applikationen, sowie viele Apps für iPhone und Android. Erfahren Sie in diesem umfassenden Handbuch des JavaScipt-Experten Sebastian Springer, wie Sie performante Oberflächen gestalten. Mit einfachen und leicht verständlichen Beispielen erlernen Sie die Grundlagen von React, React Native und Redux. Und auch als fortgeschrittener JavaScript-Entwickler profitieren Sie von den vielen Profithemen wie Tests, Animationen, Material Design Components, Server Side Renderung über Debugging bis hin zur Entwicklung von vollständigen mobilen Anwendungen. Dieses Buch ist ein Muss für jeden JavaScript-Entwickler und für jeden, der React lernen möchte!

Wir sind Mitglied im Amazon.Partnernet und können mit Affiliate-Links den Betrieb der Webseite etwas unterstützen, für Sie als Leser ist das natürlich vollkommen kostenlos.

Inhaltsverzeichnisse in Beiträgen haben hohe SEO Wirkung. Dieses Bludit Plugin erzeugt für jeden Beitrag ein Inhaltsverzeichnis vor dem Beitragstext.

Download Bludit Plugin

Download: Plugin

Warum ein Inhaltsverzeichnis wichtig ist

Platzieren Sie ein Inhaltsverzeichnis im Beitragstext bereits am Anfang des Textes, haben Sie gute Chancen, das Google Ihren Content positiv bewertet und im Ranking aufsteigen lässt. Aufzählungen deuten darauf hin, das signifikante Informationen für den Leser als wertvolle Liste aufgeführt wurden. Listen sind aus ergonomnischer Sicht schneller für den Menschen zu erfassen als reiner Text - folglich werden Aufzählungen hoch bewertet.

Bludit Plugin Inhaltsverzeichnis Bild: Automatisches Inhaltsverzeichnis mit Bludit Plugin erzeugt

H2-Tags als Liste anzeigen

Für die Erstellung einer Liste kommen zunächst die H-Tags (Überschriften) in frage. Das H1 Tag befindet sich bereits im Kopf der Webseite und darf 1x pro Seite verwendet werden, bleiben folglich die H2-Tags, die Sie im Beitrag maximal 4x nutzen können (ein paar mehr schadet dem SEO aber auch nicht). Das Bludit Plugin Inhaltsverzeichnis, sucht aus dem gesamten Content alle H2 Tags heraus und erstellt daraus eine HTML-Liste. Untergeordnete H3 Tags werden ignoriert. Das Plugin hat den folgenden Code:

001  <?php
002  
003  class pluginInhaltsverzeichnis extends Plugin {
004  
005      function getInhalt() {
006          global $content, $pages, $items, $L;
007  
008         foreach ($content as $key=>$page) {
009             $pageContent = $page->content();
010  
011             $html = '<div class="bg-wp-dark text-light rounded p-3 mb-3">';
012             $html .= '<strong>Inhaltsverzeichnis</strong>';
013             $html .= '<ul class="mt-3" style="list-style: none; padding-left: 5px;">';
014             while (stristr($pageContent, '<h2>')) {
015                 $token = explode('<h2>', $pageContent);
016                 $token = explode('</h2>', $token[1]);
017                 $pageContent = str_replace('<h2>'.$token[0].'</h2>', '', $pageContent);
018                 $html .= '<li>'.$L->get('icon_check_circle').' &ensp; '.$token[0].'</li>';
019             }
020             $html .= '</ul>';
021             $html .= '</div>';
022  
023             echo $html;
024          }
025      }
026  }
027  ?>

Code

Zur Erklärung der Funktionsweise, einige wichtige Programmzeilen des Bludit Plugins erläutert.

  • Zeile 003 erzeugt die Pluginklasse pluginInhaltsverzeichnis
  • Zeile 008 liest den Content der aktuelle Seite ein
  • Zeile 014 wiederholt die Listen-Erstellung so lange sich noch H2 Tags in $pageContent befinden - stristr()
  • Zeile 015 ermittelt den öffnenden H2 Token mit der PHP Funktion explode()
  • Zeile 016 ermittelt den schliessenden H2 Token mit der PHP Funktion explode()
  • Zeile 017 löscht die gefundene Überschrift aus $pageContent, damit sie nicht nochmals verarbeitet wird - str_replace()
  • Zeile 018 erstellt einen Listeneintrag mit dem LI-Tag
  • Zeile 023 zeigt die HTML-Liste an

Tipp: Der .= Operator in foo .= bar stellt eine Kurzschrift für foo = foo . bar dar (Verkettung bzw. Konkatinierung einer Zeichenkette)

Alle anderen Programmzeilen des Bludit Plugins betreffen eher das individuelle CSS und trivilatere Operationen und bedürfen daher kaum der Erläuterung.

Besonderheit: In Zeile 018 erfolgt unter anderem der Aufruf mit $L->get('icon_check_circle'), dabei handelt es sich um ein SVG-Icon, dessen Vektordaten in der Datei languages/de_DE.json eingetragen sind. Dies können Sie natürlich entfernen oder legen dort eigene SVG-Icons ab.

Das Bludit Plugin in ein Theme oder Template einbinden

Klar sollte zunächst sein, das die Funktion des Bludit Plugins Inhaltsverzeichnis zu speziell für einen allgemainen Hook-Aufruf durch Bludit ist, daher muss es manuell in das Bludit Theme an die richtige Stelle eingebunden werden - vorzugsweise im Template page.php.

...  
...  echo getPlugin('pluginInhaltsverzeichnis')->getInhalt();
...  echo $page->content();
...  

Code

Die Einbindung erfolgt exemplarisch mit dem oben gezeigten Codeschnipsel. Zunächst wird das Plugin gerufen und dort die Methode getInhalt() gestartet, was zur Ausgabe der HTML-Liste des Inhaltsverzeichnis noch vor dem aktuellen Content führt.

Abfragen ob das Bludit Plugin aktiviert ist

Für eine saubere Funktionsweise ist es zuvor im Theme unerlässlich, zu prüfen, ob das Plugin aktiviert wurde. Ist dies nicht der Fall, bleibt Ihre Webseite weiß und nichts passiert - der Content fehlt, da Bludit auf die Rückmeldung des nicht aktivierten Plugins warten würde.

...  <?php
...      if (pluginActivated('pluginInhaltsverzeichnis')) {
...          echo getPlugin('pluginInhaltsverzeichnis')->getInhalt();
...      }
...      echo $page->content();
...  ?>

Code

Folglich müssen Sie im Bludit Theme mit pluginActivated('pluginInhaltsverzeichnis') (zur Doku) prüfen, ob das gerufene Plugin geladen und aktiv ist, erst dann erfolgt die Anzeige eines Inhaltsverzeichnis vor dem Beitragstext.

Hinweis: Die so erzeugte Liste ist eine reine Darstellung, ihr fehlt in diesem Beispiel die Möglichkeit einzelnen Listenpunkte anzuklicken, um an die Stelle im Beitrag zu springen. Darüber hinaus werden lediglich H2 Tags berücksichtig und Schachtelungen mit etwaigen H3 Tags ignoriert. Dennoch hat die Liste eine positive Wirkung auf das Ranking bei Google und Ihr SEO.

FAQ

Die Webseite bleibt weiß, nichts passiert

Haben Sie als Methoden-Namen einen bereits verwendeten Namen benutzt, kommt dies zu einer Kollision und Bludit kann die Plugins nicht laden. Verwenden Sie einen anderen Methoden- bzw. Funktionsnamen für den Start der Listenanzeige. Namen von Funktionen und Methoden darf es nur einmal im Arbeitsspeicher des PHP geben.


 21.12.2023    Kontakt@Oliver-Lohse.de    TOC Inhalt Verzeichnis

Angular das große Handbuch zum JavaScript-Framework. Einführung und fortgeschrittene TypeScript-Techniken   -  Angular ist das JavaScript-Framework für professionelle Webapplikationen - hier lernen Sie es umfassend kennen! Christoph Höller macht Sie mit allen relevanten Technologien, Standards und Kernbestandteilen des Frameworks vertraut. Am Praxisbeispiel einer Projektverwaltung führt Ihnen der Webprofi die Komponenten und Konzepte von Angular vor. Formulare, Routing, HTTP-Anbindung und Testing - hier lernen Sie Schritt für Schritt, wie Sie eigene Angular-Webapplikationen erstellen. Inkl. aller neuen Features und Komponenten. Aktuell inkl. Material Design.

Wir sind Mitglied im Amazon.Partnernet und können mit Affiliate-Links den Betrieb der Webseite etwas unterstützen, für Sie als Leser ist das natürlich vollkommen kostenlos.

Weitere passende Beiträge

Smarty Plugin Table of Content

 smarty  TOC


Dieses kleine Smarty-Plugin erzeugt ein automatisches Inhaltsverzeichnis am Beginn des Beitrags.

Plugin Table of Content

 flight-cms  TOC Inhalt Verzeichnis


Automatische Inhaltsverzeichnisse sind in elektronischen Dokumentationen zum Standard geworden, in diesem Code ein einfacher Ansatz.

Verzeichnisse und Dateien einlesen

 php  Verzeichnis Folder Directory Ordner


Sie können mit PHP ein Verzeichnis mit Ordnern und Dateien einlesen und anzeigen. Der Beitrag zeigt ein kurzes Codesegment mit dem opendir() Befehl aus PHP.

Verzeichnis rekursiv mit glob()

 php  glob Datei Verzeichnis Durchsuchen Rekursiv


Das ist die kleinste PHP Template-Engine, bzw. das kleinste PHP-CMS der Welt, erstellt mit der Programmiersprache PHP und 7 Zeilen Code.

Verzeichnis mit Java anlegen

 java  Verzeichnis Ordner


Legen Sie mit nur 3 Zeile Java-Code ein Verzeichnis, Ordner bzw. Direcktory auf der Festplatte an.

Externen Zugriff auf Logfiles verbieten

 htaccess  Sperren Ordner Verzeichnis Datei


So verbieten Sie den Zugriff auf das Logfile ihrer Webseite in der htaccess

Impressum


CMSWorkbench.de ist eine reine Entwickler-Webseite und dient vorwiegend als Wissensspeicher für die Entwicklung von CMS

Datenschutz


Die Webseite verwendet keinerlei Tracking- oder Speicher-Mechanismen, die Rückschlüsse auf Ihre IP oder das Leseverhalten zulassen

Affiliate


Wir sind Mitglied im Amazon Partnernet und können mit Affiliate-Links (* den Betrieb der Seite etwas unterstützen, für Sie ist das natürlich kostenlos

Kontakt


Sie können mit uns über eMail Kontakt aufnehmen, schreiben Sie an Kontakt@Oliver-Lohse.de