Miniaturbildpfad anstelle von Image-Tag abrufen

Ich sehe viele Methoden, um Thumbnails in WordPress zu zeigen, aber ich bin mir nicht sofort sicher, wie ich nur den Pfad zum Thumbnail eines Posts bekommen kann und nicht den html- the_post_thumbnail() Code, der von functionen wie the_post_thumbnail() und get_the_post_thumbnail() generiert wird.

Welche Methoden stehen mir zur Verfügung, um nur den Pfad des Thumbnails zu erhalten (um es als bgimage festzulegen) und nicht das -Tag? Habe ich nur die Möglichkeit, die Ergebnisse der Methode get_ oder gibt es einen einfacheren Weg?

Solutions Collecting From Web of "Miniaturbildpfad anstelle von Image-Tag abrufen"

Thumbnail ist im Wesentlichen Anhang, so dass Sie von dieser Seite aus – Lookup-ID mit get_post_thumbnail_id() und Daten mit wp_get_attachment_image_src() , wie wp_get_attachment_image_src() :

 if (has_post_thumbnail()) { $thumb = wp_get_attachment_image_src(get_post_thumbnail_id(), 'thumbnail_name'); echo $thumb[0]; // thumbnail url } 

( Quelle )

Eine Methode wäre, alles, was von get_the_post_thumbnail() in ein Objekt umzuwandeln und das src Attribut zu ziehen:

 $thumbnail = new SimpleXMLElement( get_the_post_thumbnail( $postid ) ); print $thumbnail->attributes()->src; 

Wenn ich ein Thumbnail anzeigen muss, das an eine Post-Galerie angehängt ist, verwende ich eine benutzerdefinierte function in meiner functions.php. Es könnte für Ihre Bedürfnisse über töten, aber es sollte alles abdecken.

In diesem Beispiel lade ich alle Bilder in der Galerie eines Posts ab und zeige dann jedes Bild in einem Listenelement an. Die Liste enthält das Miniaturbild, das in einen Anker eingebettet ist, der mit dem Post verknüpft ist, von dem das Bild stammt. Die Ausgabezeichenfolge kann leicht an Ihre Bedürfnisse angepasst werden.

 function get_gallery_image_thumb_list($size){ global $post; $args = array( 'numberposts' => null, 'post_parent' => $post->ID, 'post_type' => 'attachment', 'nopaging' => false, 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID', 'post_status' => 'any' ); $attachments =& get_children($args); if ($attachments) { foreach($attachments as $attachment) { foreach($attachment as $attachment_key => $attachment_value) { $imageID = $attachment->ID; $imageTitle = $attachment->post_title; $imageCaption = $attachment->post_excerpt; $imageDescription = $attachment->post_content; $imageAlt = get_post_meta($imageID, '_wp_attachment_image_alt', true); $imageArray = wp_get_attachment_image_src($attachment_value, $size, false); $imageURI = $imageArray[0]; // 0 is the URI $imageWidth = $imageArray[1]; // 1 is the width $imageHeight = $imageArray[2]; // 2 is the height // Build the  string $ImgString = '
  • ' . $imageAlt . '
  • '; // Print the image echo $ImgString; break; } } } unset($args);}

    Rufen Sie dann die function auf und geben Sie die Größe des Bildes ein, das Sie zurückgeben möchten (Miniaturansicht, mittel, groß oder voll):

     get_gallery_image_thumb_list("thumbnail"); 

    Dies muss in The Loop oder einem benutzerdefinierten Loop aufgerufen werden.

     get_the_post_thumbnail_url($recent['ID']); 

    Das obige hat den Trick für mich getan! Ich musste die function erraten und es funktionierte magisch!

    Es ist gut zu erwähnen, dass ich get_recent_posts Schleife in dem process verwendet habe.