我创建了一个页面:联系我们,然后我为此页面指定了一个模板,这是模板代码:
<?php
/*
Template Name: Template wp_query
*/
?>
<?php
$arg = array (
\'post_type\' => \'post\',
\'post_per_page\' => -1 ,
);
$test = new WP_Query($arg);
var_dump($test);
if ($test->have_posts()) {
while ($test-> have_posts()) : $test-> the_post();
echo $test->get_the_title();
echo $test->get_the_content;
endwhile;
}
wp_reset_query();
?>
即使var\\u dump($test)返回包含信息的帖子列表,结果页面也是空白的。为了向您提供信息,我尝试了query\\u post(),效果很好。请帮帮我。
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成
模板标记不是WP_Query
对象它们是函数。
另一方面have_posts
和the_post
是的方法WP_Query
.
因此,在您的代码中,您应该使用:
while ($test->have_posts()) : $test->the_post();
正如您所做的,但是:
echo get_the_title();
echo get_the_content();
还有。。。如果要回显这些值,最好使用
the_title
和
the_content
相反,还有一些额外的过滤器和操作被启动。