所以我在Wordpress中有一个自定义PHP页面,显示一些内容:
<? while(have_posts() ) : the_post(); ?>
<?the_content();?>
<? endwhile; ?>
我需要显示与此内容相关的新闻列表,因此我写了一个短代码:
function generate_program_news(){
$news_args = array( 'posts_per_page' => 5, 'cat' => 4);
$news_query = new WP_Query($news_args);
$news_data;
while( $news_query->have_posts() ) {
$news_date = get_permalink();
$news_title = the_title();
$news_data = "<a>" .$news_date. ": " .$news_title. "</a>";
}
wp_reset_postdata();
return $news_data;
}
add_shortcode('program_news','generate_program_news');
但是当我添加[program_news]短代码并尝试访问我使用它的页面时,整个网站都会消失,直到我重新启动OpenServer。我做错了什么?
答案 0 :(得分:1)
while( $news_query->have_posts() )
你必须输入
$news_query->the_post();