Manchmal braucht man für eine Artikelüberschrift noch einen Untertitel, um diese zum Beispiel noch etwas zu präzisieren.
Wenn man es sich einfach machen möchte, kann man sich natürlich ein Plugin suchen, dies dann installieren und aktivieren. Aber jedes Helferlein frisst Ressourcen und muss auch aktuell gehalten werden.
Mit den benutzerdefinierten Feldern und ein bisschen Code geht es allerdings auch.
Zuerst fügt man in die functions.php oder - wer die Toolbox nutzt - eine eigene Datei folgenden Code ein:
function untertitel() {
global $id, $post_meta_cache;
if ($my_subt_values = get_post_custom_values('mh-subheading')) {
foreach ($my_subt_values as $key => $value) {
echo ''. $value . '
';
}
}
}
Zeile 1 definiert den Funktionsnamen. In Zeile 2 werden die Variablen id und post_meta-cache global angesprochen.
In Zeile 4 wird das benutzerdefinierte Feld angesprochen
Zeile 5 übergibt, sofern vorhanden, den Inhalt des Benutzerdefinierten Feldes - hier mh-subheading - an die Variable value. Dieser wird dann in Zeile 6 per echo-Befehl ausgegeben.
Ist das erledigt, sucht ihr Euch die Datei, in der die Ausgabe für die einzelnen Artikel gesteuert wird. Entweder ist das die single.php oder content-single.php. Hier werden dann einfach folgende Befehle eingegeben:
if (function_exists('untertitel')) { untertitel(); }
Sofern zuvor ein Abschnitt mit php-Code beendet wurde - erkennbar an der Zeichenfolge ?> müssen hier noch die
und das ? mit der schließenden Klammer > vor bzw. an den Befehl angehängt werden.
Den Code fügt ihr dort nach der Zeile ein, wo vorher der Titel ausgegeben wurde. Der Befehl hierfür lautet meistens the_title.
Nun habt ihr - ohne Plugin - in Euren Artikeln einen Untertitel unter der Überschrift, den ihr mit css noch aufhübschen könnt.
Artikelbild© pixelcreatures / Werner Moser, pixabay.de
Das finde ich wirklich mal hilfreich. Vielen Dank. Werde es sicherlich die Tage ausprobieren.
Hallo Melanie!
Gern geschehen. Freut mich wenn ich helfen kann.
Wozu genau braucht man diese Zeile?
global $id, $post_meta_cache;