Manuelle „Related Posts“ mit Advanced Custom Fields realisieren

In diesem kleinen Tutorial zeige ich euch heute, wie ihr für jeden Post manuelle „Related Posts“ setzten könnt.
Related Posts Plugin gibt es ja wie Sand am Meer, die meisten ziehen sich anhand der Kategorie oder Tags relevante Beiträge.

Das wird benötigt:

Advanced Custom Fields installieren und aktivieren. Danach taucht im WordPress Backend, in der Seitenleiste, „Eigene Felder“ auf. Hier erstellen wir eine neue Felder-Gruppe und benennen sie beliebig.

Als nächstes fügen wir ein Feld hinzu indem wir auf „+ Feld hinzufügen“ klicken, es öffnet sich ein neue Ansicht in der wir einige Einstellungen vornehmen müssen:
Bezeichnung vergeben, z.B. ACF Related Posts

Der Name wird beim ersten mal automatisch vergeben, hier ist zu beachten das dieser auf jeden Fall unique sein sollte. acf_related_posts sollte in dem Fall eigentlich ausreichend sein. Diese Bezeichnung müssen wir uns merken, sie ist wichtig um das Feld nachher gezielt anzusprechen. Dazu aber gleich mehr.

Als Feld-Typ müssen wir jetzt „Beziehung“ auswählen. Feld-Anweisung und Erforderlich? können wir erst einmal außer Acht lassen. Das Return Format ändern wir auf „Post IDs“ da wir für die Ausgabe mit einem WP_Query arbeiten werden.

Als Artikel-Typ wählen wir „post“ da wir ja „Related Posts“ ausgeben wollen 😉

Unter Position könnt ihr Regeln vergeben, wann das Custom Field angezeigt werden soll.

acfrelatedposts
Advanced Custom Fields Einstellungen

Nun haben wir aber genug eingestellt und speichern das Feld mit einem klick auf „Veröffentlichen“. Danach begeben wir uns zu den Beiträgen und erstellen ein neuen, so wie viele male vorher auch schon. Jetzt müsste unterhalb des Text Editor ein Auswahlfeld erscheinen:

Hier könnt ihr jetzt ganz bequem Posts auswählen, die nachher als „Related Posts“ in dem Beitrag erscheinen soll. Zunächst müssen wir aber noch die jeweilige Template Datei bearbeiten und folgenden Code hinzufügen. In der Regel ist dies die single.php, content.php oder content-single.php – leider kann man dieses schwer pauschal sagen, da es je nach verwendetem Theme unterschiedlich ist. Hier hilft oft nur ausprobieren, wenn man sich nicht sicher ist. Habt ihr die richtige Stelle gefunden fügt ihr folgenden Code ein:

Hier noch einfaches CSS um die Posts nebeneinander anzuzeigen:

[css] .acf-related-post-single {
float: left;
margin-left: 20px;
text-align: center;
}
[/css]

Falls es Probleme gibt oder Fragen bestehen, nutzt bitte die Kommentar-Funktion.

Es wäre auch möglich ein Plugin daraus zu entwickeln um es auf verschiedenen Blogs zu integrieren.

Schreibe einen Kommentar