¿Cómo obtengo la url de la imagen solo en the_post_thumbnail

28

Quiero saber cómo obtener la URL de la imagen en the_post_thumbnail()

Valor predeterminado the_post_thumbnail()

<img width="800" height="533" src="http://domain.com/wp-content/uploads/2011/02/book06.jpg"class="attachment-post-thumbnail wp-post-image" alt="book06" title="book06" />

Aquí quiero agarrar el src solamente. ¿Cómo puedo filtrar the_post_thumbnail() solo para obtener http://domain.com/wp-content/uploads/2011/02/book06.jpg

Déjame saber

    
pregunta haha 12.02.2011 - 08:17

5 respuestas

38

También puedes probar:

Si solo tienes una miniatura de tamaño:

$thumbnail = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ) );

O ... si tiene varios tamaños:

$thumbnail = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), "size" );

Tenga en cuenta que wp_get_attachment_image_src () devuelve una matriz: url, width, height, is_intermediate.

Entonces, si solo quieres la url de la imagen:

echo $thumbnail[0];

Recursos:

respondido por el Ross 12.02.2011 - 21:17
1

Esto hace el truco:

<?php wp_get_attachment_image_src('subgall-thumb'); ?>

Asegúrese de usar el nombre correcto para la miniatura que está llamando.

    
respondido por el Anna 21.12.2012 - 03:02
1

Desde WordPress 4.4, hay una función central eficiente que puede manejar esto de una manera más limpia que las respuestas aquí.

Puede utilizar the_post_thumbnail_url( $size ) que imprimirá la URL de la miniatura de la publicación.

Alternativamente, si desea devolver la URL en lugar de publicarla inmediatamente, puede usar $url = get_the_post_thumbnail_url( $size )

    
respondido por el cameronjonesweb 15.09.2017 - 07:14
0

Ok, lo obtuve utilizando simplexml_load_string

$dom = simplexml_load_string(get_the_post_thumbnail());
$src = $dom->attributes()->src;
    echo $src;

Otro método es bienvenido.

    
respondido por el haha 12.02.2011 - 09:37
0

Utilice el siguiente código

<?php get_the_post_thumbnail_url(); ?>

Si no es suficiente para lograr su objetivo, intente con el código siguiente

<?php $postimages = wp_get_attachment_image_src( get_post_thumbnail_id( get_the_ID() ), 'large' );

// Check for images if ( $postimages ) {

    // Get featured image   $postimage = $postimages[0];

} else {} while (have_posts() && $i < 8) : the_post(); echo esc_url( $postimage ); ?>
    
respondido por el Jit Gurav 26.10.2018 - 07:31

Lea otras preguntas en las etiquetas