Computer

Beschriftung eines Beitragsbildes in WordPress

Das geht auch ohne ein Plugin ....

AUTOR : Helmut Wegmann            GESCHÄTZTE LESEZEIT : 2 Minuten, 32 Sekunden

   Das ist der Chef, auf den müßt ihr hören !!

Das Beitragsbild (oder auf „Neudeutsch“ featured Image) ist sozusagen die Eingangstür zu einem Blogbeitrag. Es kann zum Thema hinführen oder dieses zusammenfassen. Eine Bildunterschrift die dies unterstützt oder erläutert ist hier besonders hilfreich. Leider bietet WordPress dieses Feature nicht von „Haus aus“ an.

Zu Beginn dieses Blogs vor 2 Jahren startete ich daher mit dem Plugin Featured Image Caption. Dieses Plugin ermöglicht neben der  Beschriftung eines Beitragsbildes auch das Hinzufügen eines Links. Die Link-Option nutzte ich i.d.R. nicht. Die Anwendung dieses Plugins wird ausführlich bei Theme Coder beschrieben.

So sieht das dann bei mir z.B. auf einer statischen Seite aus.

Mit der Zeit nahm die Anzahl meiner Plugins jedoch zu und ich suchte nach Möglichkeiten diese, dort wo für mich einfach möglich, durch eigenen Code zu ersetzen. Hierfür ist in vielen Fällen die Einrichtung eines Child-Theme dringend angeraten. Hierzu gibt es genügend Anleitungen in Netz wie man das einfach und sicher macht. Um etwas zu finden wie man Beitragsbilder mit einer Unterschrift versieht musste ich schon etwas mehr suchen. Fündig wurde ich bei cpu20 wo die von mir verwendete Methode letztendlich herstammt. Aber auch bei ConversionJunkies fand ich wertvolle Hinweise. Es werden auch noch Hinweise zur Einbindung eines Links bzw. zur Formatierung gegeben die ich aber nicht weiter nutze.

Der Beschriftung eines Beitragsbildes gehört auf alle Fälle auf die Einzeldarstellung des Blog-Beitrages und dort natürlich unter das Bild. Auf Archiv-Seiten oder Seiten auf denen mehrer Beiträge aufgelistet werden ist eine Beschriftung m.E. eher störend. Zur Darstellung eines einzelnen Beitrages ist in meinem Theme die Datei content-single.php verantwortlich. Bei anderen Themes kann die Bezeichnung variieren, so wäre z.B. content.php auch ein heißer Kandidat. Content-single.php steht bei mir im Theme Ordner in dem Unterverzeichnis template-parts. Das Child Theme bekommt also das gleiche Unterverzeichnis spendiert und die Datei content-single.php wird dort hinein kopiert und kann nun im Child Theme editiert werden.

Zunächst muss in der Datei content-single.php die Stelle gefunden werden an der das Beitragsbild ausgegeben wird. Hierzu muss es einen Code geben wie :

<div class="entry-thumbnail">
    <?php the_post_thumbnail(''); ?> <!-- das Beitragsbild -->
</div>

Dabei ist the_post_thumbnail() für die Ausgabe des Beitragsbildes verantwortlich. Direkt danach wird der im folgenden diskutierte und angegebene Code eingetragen.

In WordPress wird eine Bildunterschrift im Feld post_excerpt gespeichert. Mit get_post_thumbnail_id erhält man die ID des Beitragsbildes. Mit get_post() werden die Objekt-Inhalte eines Post ermittelt die als Argument übergeben wurden. Der folgende Code speichert also die in der Mediathek hinterlegte Bildunterschrift in der Variablen caption und gibt sie auf dem Bildschirm aus.

<?php if ( $caption = get_post( get_post_thumbnail_id() )->post_excerpt ) : ?>
    <p class="caption">
    <?php echo '&nbsp;&nbsp;'; ?>
    <?php echo $caption; ?>
    </p>
<?php endif; ?>

Dieser Code wird an die zuvor gefundene Stelle in die Datei content-single.php des Child Themes kopiert. Von nun an wird bei jedem einzelnen Blogbeitrag die in der Mediathek hinterlegte Bildunterschrift angezeigt.

Wenn man für eine einzelne, statische Seite ebenfalls eine Bildunterschrift möchte, so muss das geschilderte Verfahren auf die Datei angewendet werden welche für die Darstellung dieser einzelnen, statischen Seite verantwortlich ist. In meinem Theme (Uku von Elma Studio) wäre das content-page.php.

Fazit : Ich habe dies alles aufgeschrieben damit ich in 2 Jahren auch noch weiss was ich warum gemacht habe. Vielleicht kannst Du es ja auch auf deinem Blog gebrauchen.

Dieser Beitrag hat bisher : 26 views.

Schreibe einen Kommentar

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

Die EU-DSGVO schreibt den Hinweis vor, dass Name und Mailadresse in der Blogdatenbank gespeichert werden. Durch Absenden des Kommentares erklären Sie sich damit einverstanden.

%d Bloggern gefällt das: