Posts und verwandte Beiträge Teil 2

home bludit templating

ChatGPT - Alltägliche Aufgaben mit Prompts meistern   -  Du möchtest wissen, wie du KI richtig nutzt und davon profitieren kannst? Dann wird dir dieses Workbook eine große Hilfe sein. Rainer Hattenhauer zeigt anhand einer Vielzahl praktischer Beispiele aus den unterschiedlichsten Anwendungsbereichen ganz konkret, wie KI dein Leben erleichtern kann. Egal ob du Texte verfassen, recherchieren, Bilder generieren oder deinen eigenen Programmcode erstellen möchtest. Hier kannst du auch ohne Vorkenntnisse direkt loslegen und die gängigen KI-Frontends ausprobieren. Inklusive ChatGPT, DALL-E 2, Midjourney, DeepL Write etc.

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.

Teil 2 - dieser Beitrag zeigt Ihnen das vollständige Coding, wie das CMS Bludit anhand von Tags verwandte Beiträge anlisten kann und als Vorschläge anzeigt.

Inhalt

Verwandte Beiträge auflisten

Im ersten Teil zu dieser Beitragsreihe haben Sie ein kurzes einfaches Coding gesehen, das alle passenden Beiträge zu einem Artikel unter dem aktuellen Post anzeigt. Dieses Coding ist mit den in der Dokumentation des CMS Bludit vorgeschlagenen Codeschnipseln entstanden. Das Coding hatte allerdings noch eine Schwäche, Beiträge werden doppelt angezeigt, da sie natürlich mit mehreren Schlagwörtern auch mehrfach auftauchen - logo. Folgendes Coding soll dies beheben.

...
030  <?php $pageTemp = $page->title(); ?>
031  <br>
032  <br>
033  <h3>Empfehlungen$tagName) {
040      $tagKey = strtolower($tagName);
041      $tag = getTag($tagKey);
042      foreach ($tag->pages() as $pageKey) {
043        $page = new Page($pageKey);
044        if ($pageTemp != $page->title()) {
045          $fullString = '<p><img src='.$page->coverImage().' style="width: 120px; float: left; margin-right: 15px;">'
046                        .'<h4>'.$page->title().'</h4>'
047                        .$page->description()
048                        .'<a href='.$page->permalink().'> mehr...</a></p>';
049          $array[] = $fullString;
050        }
051      }
052    }
053    asort($array);                //das Array sortieren A oben Z unten
054    $temp = array_unique($array); // dopelte Einträge entfernen
055    foreach ($temp as $ausgabe) {
056      echo $ausgabe;
057    }
058  ?>
059  <br>
060  <br>
...

Code

Im wesentlichen sehen Sie oben den Programmcode aus dem ersten Teil, neu dazu gekommen ist der Teil ab der Zeile 45. Die Vollständige HTML-Ausgabe wird in einer Variablen $fullString zusammengefasst. In Zeile 49 wird sie immer einem Array $array zugefügt. Zeile 53 sortiert das Array und in Zeile 54 werden doppelte Einträge entfernt, sodass die Ausgabe am Bildschirm in Zeile 56 erfolgen kann.

Aber auch hier gibt es Optimierungsbedarf. Die Vorschläge werden auch im Kontaktformular angezeigt. Jetzt könnte man sich durchaus streiten ob dies auf der Seite des Kontaktformulars sinnvoll ist oder nicht, ich persönlich finde es gar nicht so schlecht, denn dann könnte man durchaus Beiträge vorschlagen die dazu passen (vielleicht gibt es ja etwas sinnvolles). Aber auf jeden Fall störend ist die Überschrift 'Empfehlungen', die muss weg!

031  <?php if ($page->slug() != 'kontakt') { ?>
032    <br>
033    <br>
034    <h3>Empfehlungen</h3>
035    <br>
036  <?php } ?>

Code

Das Coding oben behebt dieses Problem. Solange der Seiten-Slug (SEO-Name) nicht 'kontakt' lautet, wird der Kopf Vorschlagsliste aufgebaut. Dies reicht schon aus. Der Rest wird zwar ausgeführt, stört aber nicht wenn er doch etwas verwandtes findet - warum nicht.

Letztendlich können Sie das ganz nach Ihrem Geschmack machen.


 21.12.2023    Kontakt@Oliver-Lohse.de    Beitrag untergeordnet verwandt Post

PHP 8 und MySQL im perfekten Zusammenspiel   -  Dynamische Webseiten mit PHP und MySQL programmieren. Alles, was Sie dafür wissen müssen, steht in diesem Buch. Profitieren Sie von einer praxisorientierten Einführung und lernen Sie alle neuen Sprachfeatures von PHP 8 kennen. Die Autoren Christian Wenz und Tobias Hauser sind erfahrene PHP-Programmierer und Datenbankspezialisten. Sie zeigen Ihnen, wie Sie MySQL und andere Datenbanksysteme effektiv einsetzen. Mit diesem Wissen machen Sie sich rundum fit für dynamische Websites.

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

Untergeordnete Seiten in GS abfragen

 get-simple  Seiten Beitrag untergeordnet


Ermitteln Sie untergeordnete Seiten mit Hilfe von menu_data(). Ordnen Sie Seiten und Beiträge mit dieser Technik einem Leitartikel auf der Webseite zu.

Posts und verwandte Beiträge Teil 1

 bludit  Beitrag verwandt untergeordnet


Teil 1 - Mit wenigen Handgriffen zeigen Sie verwandte Beiträge unter dem Post an. Dank der exzellenten Dokumentation des Bludit-Projektes fast ein Kinderspiel.

Posts mit untergeordneten Beiträgen

 bludit  Beitrag untergeordnet zugewiesen Anhang


Die Funktion Beiträgen einen Leitartikel zu geben, gibt es schon sehr lange in Bludit, jedoch war die Anzeige im Theme "Alternative" nicht möglich.

Konkreten Beitrag in GetSimple lesen

 get-simple  Beitrag Post Article lesen


Lesen Sie feste Beiträge mit zwei Zeilen Code aus dem GetSimple CMS aus. Besonders hilfreich für fixierte Templates mit unveränderlichen Strukturen.

Einen bestimmten Beitrag anzeigen

 pico  Beitrag Post


Statt alle Blogbeiträge im Loop aufzulisten, können Sie auch einen ganz konkreten Beitrag anzeigen und dessen Existenz zuvor prüfen. Dieses Script zeigt es.

Der Seiten Paginator in Pico

 pico  Paginator Seite Beitrag Post


Dieser Beitrag zeigt Ihnen, wie Sie mit wenigen Handgriffen einen Seitenpaginator und Blätterfunktion in Ihre CMS-Webseite bzw. Web-Blog implementieren.

Bestimmte Seiten im Loop ausschliessen

 pico  Beitrag Loop


if-Kontrollstrukturen im Twig-Template helfen bestimmte Seiten auszuschließen, denn nicht alle Seiten sollen beispielsweise einen Autor oder das Datum zeigen

Beiträge und Kategorien rekursiv anzeigen

 yellow  Navigation Menue Ordner Post Beitrag


Die Standard URL für den Admin Login in Datenstron Yellow und wie Sie ihn verstecken bzw. verbergen. So schützen Sie sich vor einem Hacker-Angriff auf das CMS

Beitragsmenü ohne Plugin in Pico

 pico  Menue Navigation Beitrag


Für die Einbindung eines Menüs gibt es kostenlose Plugins, Sie können dies auch mit Mitteln des Templates umsetzen und verzichten auf unsichere Plugins

Beitragsanzahl mit Twig ermitteln

 pico  Beitrag Post


Wollen Sie im Rahmen des Twig-Templatings unter PICO die Anzahl der Beiträge in einem Ordner ermitteln, dann ist dieser Code die Lösung

Beitrags Sortierung auf- o. absteigend

 automad  Beitrag Sortieren Datum Titel ASC DESC


So sortieren Sie Beiträge und Artikel im CMS Automad aufsteigend oder absteigend für die Anzeige im Frontend des Besuchers bzw. des Lesers Ihrer Webseite.

Beitrags Datum in Automad verbergen

 automad  Beitrag Datum verbergen


Das Beitragsdatum ist durchaus SEO relevant und es wird empfohlen dieses im CMS Automad auszuschalten. Die folgenden Snippets können Sie dafür bearbeiten.

Alle Posts im Beitrags-Loop zeigen

 get-simple  Loop Beitrag Post


Lesen Sie im GetSimple CMS alle Posts und Beiträge auf der Startseite mit dem Beitrags-Loop einzeln aus, der Beitrag zeigt Ihnen wie einfach das geht.

Aktuell angezeigte Seite abfragen

 bludit  Page Beitrag Seite


Arbeiten Sie in Bludit mit Seitennavigationen, dann kann die Abfrage der aktuellen Seite durchaus hilfreich sein. So fragen Sie diesen Wert der Seite ab.

Admin Einfache Artikel Statistik

 bludit  Beitrag Artikel Statistik


Mit diesem Code, können Sie eine ganz einfache Beitrags-Statistik erstellen und in einem Log-File speichern. Ermitteln Sie welcher Beitrag wie oft gelesen wird

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