Como faço para obter o URL da imagem apenas na_post_thumbnail

28

Eu quero saber como obter o URL da imagem em the_post_thumbnail()

Padrão 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" />

Aqui eu quero pegar o src apenas. Como faço para filtrar the_post_thumbnail() apenas para obter http://domain.com/wp-content/uploads/2011/02/book06.jpg

Deixe-me saber

    
por haha 12.02.2011 / 08:17
fonte

5 respostas

38

Você também pode tentar:

Se você tiver apenas uma miniatura de tamanho:

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

Ou ... se você tiver vários tamanhos:

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

Note que wp_get_attachment_image_src () retorna uma matriz: url, width, height, is_intermediate.

Então, se você quiser apenas o URL da imagem:

echo $thumbnail[0];

Recursos:

por Ross 12.02.2011 / 21:17
fonte
1

Isso faz o truque:

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

Certifique-se de usar o nome correto para a miniatura que você está chamando.

    
por Anna 21.12.2012 / 03:02
fonte
1

Desde o WordPress 4.4, há uma função central eficiente que pode lidar com isso de uma maneira mais limpa do que as respostas aqui.

Você pode usar the_post_thumbnail_url( $size ) que imprimirá o URL da miniatura da postagem.

Como alternativa, se você quiser retornar a URL em vez de imprimi-la imediatamente, use $url = get_the_post_thumbnail_url( $size )

    
por cameronjonesweb 15.09.2017 / 07:14
fonte
0

Ok, usei simplexml_load_string

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

Outro método é bem-vindo.

    
por haha 12.02.2011 / 09:37
fonte
0

Por favor, use o código abaixo

<?php get_the_post_thumbnail_url(); ?>

Se não for o suficiente para atingir seu objetivo, tente abaixo do código

<?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 ); ?>
    
por Jit Gurav 26.10.2018 / 07:31
fonte