¿Cómo obtener la URL de la miniatura de la publicación de WordPress (imagen destacada)?

3 minutos de lectura

Avatar de usuario de ManpreetSandhu
ManpreetSandhu

Estoy usando esta función para obtener las imágenes destacadas:

<a href="#" rel="prettyPhoto">
    <?php the_post_thumbnail('thumbnail'); ?>
</a>

Ahora quiero obtener la imagen destacada completa al hacer clic en la etiqueta de anclaje para la que necesito una URL de imagen destacada en

<a href="https://stackoverflow.com/questions/11261883/here" rel="prettyPhoto">

¿Cómo puedo arreglar esto?

avatar de usuario de swapnesh
intercambiar

Verifique el código a continuación y avíseme si funciona para usted.

<?php if (has_post_thumbnail( $post->ID ) ): ?>
  <?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' ); ?>
  <div id="custom-bg" style="background-image: url("https://stackoverflow.com/questions/11261883/<?php echo $image[0]; ?>")">

  </div>
<?php endif; ?>

  • muchas gracias es un trabajo. Quiero agregar también condición. como si tuviera una miniatura de publicación, luego muestre esto y, si no, entonces otro div o css o imagen predeterminada, alguna idea de cómo

    – pagol

    2 de agosto de 2015 a las 3:57

  • Lo hice pero es la forma correcta o no, no lo sé. <?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' ); ?> <div class="section bannerarea cashstudybanner" style="background-image: url( <?php if ( has_post_thumbnail() ) { echo $image[0]; } else { ?> <?php bloginfo('template_directory'); ?>/images/common-banner.jpg <?php } ?> )">

    – pagol

    2 de agosto de 2015 a las 4:35


  • ¡Muchos gracias! Este código está funcionando perfectamente.

    – Calum Childs

    21 de julio de 2018 a las 6:07

  • Solo pensé en pasar para decir que uso esta respuesta todo el tiempo. Es francamente cómico que casi una década después de esta publicación, WordPress aún no haya simplificado esto de manera espectacular.

    – Kai Qing

    11/03/2021 a las 21:53

  • Muchas gracias. Este código funciona con el usuario registrado, pero el usuario no registrado en la imagen es nulo. Alguna sugerencia para mi problema. Yo uso WP 5.7

    – Trung

    6 de julio de 2021 a las 2:47

Avatar de usuario de LOLapalooza
LOLapalooza

Si desea SOLO la fuente, y no una matriz con otra información:

<?php $url = wp_get_attachment_url( get_post_thumbnail_id($post->ID), 'thumbnail' ); ?>
<img src="https://stackoverflow.com/questions/11261883/<?php echo $url ?>" />

  • Para la versión 4.4.0 y superior wp_get_attachment_image_url().

    –Charlie Vieillard

    29/09/2016 a las 11:50

  • esto era exactamente lo que necesitaba. carga img src completo. ¡gracias!

    – bananaforscale

    2 de noviembre de 2016 a las 21:31


  • wp_get_attachment_image_url solo se aplica si conoce el ID del archivo adjunto (no el ID de la publicación).

    – ciertamente clave

    22 de noviembre de 2016 a las 15:20


Avatar de usuario de Omprakash Patel
Omprakash Patel

// Try it inside loop.  
<?php
$feat_image = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
echo $feat_image;
?>

  • @gavard.e lo haría Realmente trabajar con " en vez de ' 😛 Pero las comillas no son necesarias en absoluto.

    – Ivanka Todorova

    11 de febrero de 2016 a las 11:56


¡Manera fácil!

 <?php 
     wp_get_attachment_url(get_post_thumbnail_id(get_the_ID()))
 ?>

Esto funcionó perfectamente para mí:

<?php echo get_the_post_thumbnail_url($post_id, 'thumbnail'); ?>

  • Nota: Solo disponible desde WordPress 4.4.0

    – Marc Guay

    11/07/2016 a las 19:15

  • Si desea la imagen a tamaño completo.

    – sí, muchacho

    20 de septiembre de 2019 a las 7:14

Avatar de usuario de Peter Mortensen
Pedro Mortensen

Creo que esta es la solución más fácil y la actualizada:

<?php the_post_thumbnail('single-post-thumbnail'); ?>

  • Nota: Solo disponible desde WordPress 4.4.0

    – Marc Guay

    11/07/2016 a las 19:15

  • Si desea la imagen a tamaño completo.

    – sí, muchacho

    20 de septiembre de 2019 a las 7:14

Avatar de usuario de Peter Mortensen
Pedro Mortensen

Esta es la respuesta más simple:

<?php
    $img = get_the_post_thumbnail_url($postID, 'post-thumbnail');
?>

¿Ha sido útil esta solución?