2010-11-14 14 views
8

Zauważyłem, że użycie funkcji post_thumbnail() w Wordpress powoduje wstawienie obrazu zawierającego tag img. Czy istnieje sposób, aby wstawić TYLKO src tego obrazu?Wordpress <? Php the_post_thumbnail ('full'); ?> bez tagu img-tag

Sofar Próbowałem to

$image = get_the_post_thumbnail($post->ID, 'thumbnail'); echo $image; 

ale tylko eksportuje takie same. Jakieś pomysły? z góry dzięki za pomoc :)

+0

i można korzystać wordpress.stackexchange.com dalszych pytań – ariefbayu

Odpowiedz

12

Znaleziono odpowiedzi. Dzięki i tak.

<?php 
//Get the Thumbnail URL 
$src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), array(320,240), false, ''); 
echo $src[0]; 
?> 
+1

I zanim zapytasz: czy zaakceptować tę odpowiedź w ciągu 2 dni, kiedy wolno mi się z tym pogodzić! :) –

+2

Należy pamiętać, że wygeneruje to dodatkowe zapytania do bazy danych, co może stanowić problem, jeśli używasz go w pętli podczas pobierania wielu postów. – Aneon

+1

Sięgając głębiej w to, wygląda na to, że get_the_post_thumbnail() generuje również dodatkowe zapytania, prawdopodobnie dlatego, że miniatury postu korzystają z systemu załączników. Sądzę, że jest to nieuniknione, jeśli chcemy używać wbudowanej funkcjonalności obrazu WP. – Aneon

0

post Thumbnail linkami do dużego rozmiaru obrazu Ten przykład linki do „dużego” post Miniatura wielkości i muszą być używane wewnątrz pętli.

if (has_post_thumbnail()) { 
$large_image_url = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'large'); 
if (! empty($large_image_url[0])) { 
    echo '<a href="' . esc_url($large_image_url[0]) . '" title="' . the_title_attribute(array('echo' => 0)) . '">'; 
    echo get_the_post_thumbnail($post->ID, 'thumbnail'); 
    echo '</a>'; 
}} 

Źródło: https://developer.wordpress.org/reference/functions/get_the_post_thumbnail/

Powiązane problemy