0
im在wordpress的php模板文件中使用shortcode,因爲shortcode打開和關閉,我需要將整個內容作爲一個變量來獲取。在這種情況下,內容是一個wordpress循環。如何將wordpress循環的內容作爲一個變量循環使用
到目前爲止,我只顯示循環的最後一篇文章。我明白爲什麼,因爲這是變量的最終價值。林想知道有人能幫我把整個內容(即所有三個帖子)變成一個變量,與最後一篇文章相反。
感謝
<?php
$news_title .= '';
$news_single_post .= '';
if (have_posts()) :
$the_query = new WP_Query(array ('posts_per_page' => 3, 'cat' => 1)); /* */
while ($the_query->have_posts()) : $the_query->the_post(); ?>
<?php
$news_title = get_the_title();
$news_excerpt = get_the_excerpt();
$news_single_post = '<div class="home-content-news-title">'.$news_title.'</div><div class="home-content-news-excerpt">'.$news_excerpt.'</div>';
endwhile;
wp_reset_postdata();
endif;
$news_tab_title_string = 'News';
$news_tab_title_shortcode = do_shortcode('[wptabtitle]'.$news_tab_title_string.'[/wptabtitle]');
$news_tab_content_shortcode = do_shortcode('[wptabcontent]'.$news_single_post.'[/wptabcontent]');
$news_tab = $news_tab_title_shortcode.$news_tab_content_shortcode;
echo do_shortcode('[wptabs]'.$news_tab.'[/wptabs]');
?>
謝謝Maccath,即完美。我可以只是爲了學習... 我決定省略'$ news_all_posts'變量,只是定義'$ news_single_post ='';',然後在循環中我寫了'news_single_post。= ... .........',這也工作。 只是想知道我做了什麼有什麼不對嗎?我做這件事的唯一原因是減少變量的數量並保持整潔,但我只是在學習,所以也許我錯過了一些明顯的東西,謝謝你的幫助。 – Adrian
你做得很好,雖然我會刪除'$ news_single_post',而只是使用'$ news_all_posts'而不是'$ news_single_post'現在包含所有帖子,所以名稱與其內容不匹配 - 最好的做法是始終使用相關變量名稱以及刪除不必要的變量。 – Maccath
乾杯,這是有道理的 – Adrian