Thumbs- Bilder anzeigen, obwohl the_excerpt verwendet wird

Show Thumbs in WordPress
Show Thumbs in WordPress

Ich wurde von Ramona per Email gefragt wie man denn Thumbs auf der Suchergebnisseite anzeigt. Also nehm ich an, dass bei diesem WP Theme die Suchergebnisinhalte mit the_excerpt angezeigt werden, weil man dort keine Bilder sieht.

Nun das kommt drauf an, verwendet man wirklich bei jedem Artikel ein sogenanntes „Artikelbild“ oder hat man das nicht immer gemacht. Es gibt ja auch Blogs, da gab es diese Artikelbilder noch gar nicht. Außerdem kann es sein, dass ein Artikel vielleicht gar kein Bild hat. Weder im Artikel noch ein Artikelbild. Und bei manchmal tausenden von Artikeln mag man wirklich nicht alle kontrollieren. Zumindest kenn ich kaum jemand, der das gern macht ;)

Daher zeige ich hier in diesem Artikel. Eine Lösung, wenn es lauter Artikelbilder gibt. Eine Lösung, wenn es Bilder gibt, aber keine Artikelbilder und beide Lösungen mit einer FallbackLösung, wenn mal kein Bild da sein sollte.

Geschickt ist es, wenn man ein Standardbild default.jpg im Ordner „images“ des jeweiligen Themes platziert. Dies sollte die Größe der Thumbs haben, das erspart „Bandbreite“.

Thumbs anzeigen mit Artikelbild


<?php //das muss in den loop
if(has_post_thumbnail()) {
the_post_thumbnail(array(150,120), array("class" => "alignright post_thumbnail"));
} else {
echo '';
}
?>

Im Theme TwentyTen Eleven muss man in allen Templates, die mit content anfangen nach dem Platz suchen,
weil die search.php die alle nimmt je nachdem, unter welchem Postformat ein Artikel gespeichert wurde.
Also diesen obigen Code gleich nach… einfügen.


<?php if ( is_search() ) : // Only display Excerpts for Search ?>

Lösung ohne Artikelbilder catch that image

Man kann ja auch das erste Bild aus einem Artikel holen und dieses dort anzeigen lassen wo man mag.

Folgender Code gehört in die functions.php des verwendeten Themes:



//hole das erste Bild oder ein StandardBild
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
$huch=get_bloginfo('template_directory');
// no image found display default image instead
if(empty($first_img)){ $first_img = "$huch/images/default.jpg"; } return $first_img; }


Im Template holt man dieses Bild dann so:


<img class="alignleft" src="<?php if(function_exists('catch_that_image')){echo catch_that_image();} ?>" alt="" width="150" height="120" />


Mag man dieses Bild verlinken-zb mit dem Permalink zum Artikel, dann so:

<a class="bilderlink" href="<?php the_permalink() ?>"   title="<?php   the_title_attribute ()); ?>">
<img class="alignleft" src="<?php if(function_exists('catch_that_image')){echo catch_that_image();} ?>" alt="" width="150" height="120" /></a>


Selbstverständlich kannst Du das html und die CSS Klassen nach deinem Belieben ändern.

4

4 Beiträge zu “Thumbs- Bilder anzeigen, obwohl the_excerpt verwendet wird

  1. Kommentar Autor
    Markus
    Kommentar

    Möglichkeiten gibt es da viele. Ich nutze in allen Template-Dateien, außer der page.php und single.php, the_excerpt in Verbindung mit einem Atikelbild. Für ältetere Artikel, die noch kein Thumbnail haben, setze ich einfach eine Standard-Grafik ein, in Deinem ersten Code-Beispiel mit else.

    Da viele Artikel bei mir keine Bilder enthalten, macht die Option, das erste Bild des Artikels zu holen, wenig Sinn, zudem wird das Thumbnail auch bei den Related Posts angezeigt.

    Aber das ist ja das schöne an WP: Es gibt viele Möglichkeiten, man hat die Wahl. :)

  2. Kommentar Autor
    Monika
    Kommentar

    stimmt Markus, und ich bin mir sicher, es gibt noch mehr Möglichkeiten als Du und ich hier aufzeigten.

    Danke auch für das „Weitergeben bei G+“ :-)

  3. Kommentar Autor
    Aniela
    Kommentar

    Hallo,

    danke für die Anleitung. Ich bin leider noch totaler Neuling und hab nicht ganz versanden wo ich das reinposten muss?

    Mein Theme ist auch Green Mile, das gefällt mir super, aber ich hab damit auch eine Menge Probleme, v.a. wegen meinem Mangel an Wissen :)
    Hilfe ist mehr als willkommen!

  4. Kommentar Autor
    Monika
    Kommentar

    hi Aniela
    ich kenne dieses Theme leider nicht,
    daher habe ich keine Ahnung wie es aufgebaut ist

    tut mir leid :(