✅ WEB- und WordPress-Nachrichten, Themen, Plugins. Hier teilen wir Tipps und beste Website-Lösungen.

Wie erstelle ich eine Archivseite (Zusammenfassung) für alle WordPress-Posts/Seiten mit PHP?

6

Ich habe gerade zwei Übersichtsseiten für meine beiden Blogs erstellt: https://helloacm.com/archives-of-pagesposts/ und http://www.codingforspeed.com/archives-of-pagesposts/.

Auf beiden Seiten sind alle Artikel (inklusive Seiten) nach Monaten sortiert. Die Anzahl der Kommentare für jeden Beitrag wird gezählt und hinter dem Titel des Beitrags in Klammern gedruckt.

Dies kann gut sein, um alle Artikel/Seiten für Benutzer und auch für Suchmaschinen aufzulisten, sodass diese Seite auch als Sitemap dient.

Wie Sie auf der Zusammenfassungsseite sehen können, druckt es zuerst die Gesamtzahl der Posts/Seiten und generiert für jeden Monat (nur wenn in diesem Monat mindestens ein Post/eine Seite veröffentlicht wurde) eingerückte Links.

Also, wie werden wir das erreichen? Zunächst einmal benötigen Sie innerhalb von WordPress einige Plugins, um PHP-Code in Beiträge/Seiten einfügen zu können. Gehen Sie nach der Anmeldung zum Control Panel von WordPress und navigieren Sie zu Plugins und ‘Add New’. Suchen Sie nach „PHP einschließen” und Sie werden viele Optionen finden.

Kopieren Sie dann den folgenden PHP-Code und fügen Sie ihn in eine einzelne PHP-Datei im Stammverzeichnis des Designs ein.

Der Algorithmus hier besteht darin, in SQL nach Jahr-Monat zu gruppieren und jeden Monat eine Schleife zu durchlaufen und alle Beiträge/Seiten für diesen Monat abzurufen. Verwenden Sie die globale Variable $wpdb, um die SQL-Anweisung auszuführen. Verwenden Sie get_var für einzelne variable SQL-Anweisungen wie select count(1) und verwenden Sie get_results für mehrere Zeilen.

Ändern Sie den WordPress-Tabellennamen wp_posts, wenn das Präfix nicht wp_ ist. Sie können jedoch $wpdb->posts verwenden, um den Namen der posts-Tabelle zu erhalten, was eine bessere Methode ist. Filtern Sie die Beiträge/Seiten, indem Sie die entsprechenden SQL-Anweisungen (Where Cause) entsprechend ändern.

Zusätzlich werden die Facebook-Likes gezählt und ebenfalls in die Klammern aufgenommen. Dazu müssen Sie eine weitere Tabelle erstellen, die das Schlüsselpaar für Artikel-ID und Likes-Nummer enthält. Sie müssen eine Crontab einrichten, die vielleicht einmal pro Stunde ausgeführt wird, um die Facebook-Likes (oder andere soziale Netzwerke) für jeden Beitrag zu aktualisieren. Dies wird in einem weiteren separaten Tutorial behandelt.

Aufnahmequelle: helloacm.com

Diese Website verwendet Cookies, um Ihre Erfahrung zu verbessern. Wir gehen davon aus, dass Sie damit einverstanden sind, Sie können sich jedoch abmelden, wenn Sie möchten. Annehmen Weiterlesen