2017-09-24 108 views
0

我寫了這個簡單的簡碼來返回我的自定義博客網格,並且我想插入張貼的精選圖像作爲張貼的背景圖片。縮略圖url返回頁面頂部

除背景圖像部分外,一切工作都很好。我不明白爲什麼圖像網址返回頁面頂部和樣式屬性是空的它只返回`background-image url('');下面

截圖: enter image description here

function gita_blog_grid($atts) { 
    extract(shortcode_atts(array(
    'post_type' => 'post', 
    'orderby' => 'date', 
    'order' => 'DESC', 
    'perpage' => 3 
), $atts)); 

    $output = '<div class="posts_wrapper"><div class="gita_posts_row">'; 
    $args = array(
    'post_type' => $post_type, 
    'orderby' => $orderby, 
    'order' => $order, 
    'posts_per_page' => $perpage 
); 

    $gita_query = new WP_Query ($args); 

    while($gita_query->have_posts()) : $gita_query->the_post(); 

     if(has_post_thumbnail()) { 
     $post_thumb = the_post_thumbnail_url('full'); 
     } 

     $output .= '<article class="gita_single_post" style="background-image: url(\''. $post_thumb . ' \')">'; 
     $output .= '<h3 class="gita_post_title">' . get_the_title() . '</h3>'; 
     $output .= '</article></div></div>'; 

    endwhile; 
    wp_reset_query(); 
    return $output; 
    } 

    add_shortcode('gita_blog', 'gita_blog_grid'); 

回答

0

the_post_thumbnail_url直接顯示的URL頁面,只要它的調用。在你的情況下,只要它被調用,就會直接在屏幕上顯示URL字符串,這是在你完成輸出處理並返回顯示之前。

而是直接顯示它的,你想要得到它作爲一個變量,所以你需要使用get_the_post_thumbnail_url

if(has_post_thumbnail()) { 
     $post_thumb = get_the_post_thumbnail_url(get_the_ID(), 'full'); 
} 

編號:

+0

謝謝你回答,但這不能解決問題。 Url以正常方式返回,問題在於它在頁面頂部而不是屬性。編輯答案與截圖 – Ganga

+0

你真的嘗試過嗎?因爲我可以向你保證它*是什麼導致了問題。 – FluffyKitten

+0

是的,我做過。網站是活的 - 你可以檢查。 http://gitainsights.com/ – Ganga