WordPress: Eine schöne 404er Seite

Ich hatte eine Idee

Ich hatte schon länger so eine Idee im Kopf herum spucken von einer Art ‚Hilfeseite‘ wenn man zum ersten Mal auf meinen privaten Blog kommt. Vor einigen Wochen dann plötzlich der Geistesblitz: Ich verlinke einfach passende Bitmojis auf die den letzten Beitrag der wichtigsten Kategorien. Schnell war die Idee umgesetzt. Zufrieden aber auch noch ein wenig planlos, wo ich die Seite platziere, zeigte ich diese einem Freund. Tja. Und wie das immer so ist: Wenn man Dinge mit einem gewissen Abstand betrachtet, erhält man gleich nochmal eine ganz neue Sichtweise. Denn seine erste Frage war:

Wie viele 404 Fehler hast du denn auf deiner Seite?

404 – Seite nicht gefunden

*Facepalm*. Was für eine gute und doch so naheliegende Idee. Das ist die Ideale 404er Fehlerseite. Wieso bin ich da nicht drauf gekommen? Glücklicherweise gab es in meinem WordPress Theme auch schon eine Vorlage für eine 404er Seite. Von der aus habe ich einfach einen Redirect auf meine neue Seite gemacht und schon hat man diese tolle neue Übersicht als 404er Seite.

Etwas dynamik in die Sache bringen

Einen Nachteil hat die Seite aber noch: Ich plane und schreibe ja relativ viele Beiträge. Da muss ich ja fast jeden zweiten Tag die 404er Seite anpassen, damit immer die aktuellsten Beiträge verlinkt sind. Das Problem habe ich schnell erkannt und nach zwei Wochen war mir das auch schon zu doof. Da musste was dynamisches her. Also zurück zu dem Template, dass hier vorgegeben war. Da musste ich ja nur meine Bilder aus der aktuellen Seite reinkopieren. Tja und dann nur noch die Links entsprechend anpassen.

WordPress: Aktuellsten Beitrag einer Kategorie finden

Es gab genau zwei Probleme um das Projekt fertigzustellen:
Problem 1: Viele Artikel waren keinen Kategorien zugeordnet. Da hat man so gut wie keine Chance das dann dynamisch zu lösen. Also schnell entsprechende Kategorien angelegt und zahlreiche Blogeinträge nachträglich den Kategorien zugeordnet.
Problem 2: Wie komme ich an die ID der aktuellen Einträge? Da muss man sich nur mal in die WordPress Struktur kurz einarbeiten

Folgendes braucht man:
prefix_wp_term_taxonomy: Hier sind die Einträge relevant, bei denen die Spalte taxonomy=’category‘ ist. Damit erhält man die Kategorien. Relevant ist dann die ‚term_taxonomy_id‘
prefix_wp_term_relationships: Hier sind die Kategorien den Beiträgen zugeordnet. Die object_id verweist dann auf den Beitrag
prefix_wp_posts: Hier sind die Beiträge gespeichert.

Was ich wollte, war die ID des letzten veröffentlichten Beitrages einer Kategorie. Was dem Statement entspricht:
(MEINEID muss durch die entsprechende term_taxonomy_id ersetzt werden)

select id from prefix_wp_posts where post_status = 'publish' and post_type='post' and id in (select object_id FROM prefix_wp_term_relationships where term_taxonomy_id = MEINEID) order by post_date desc limit 1

Anhand dieser ID verlinke ich dann direkt auf den aktuellsten Beitrag in der Kategorie.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert