为什么the_content()在回显内容正常的情况下什么也不显示?

时间:2018-12-05 11:34:18

标签: wordpress

我正在这样做:

$faq = new WP_Query(array('post_type' => 'my_faq', 'page_id'=>$faq_id));
if ($faq->have_posts()) : while ($faq->have_posts()) : $faq->the_post();
    $faq->the_content();
    //echo $faq->post->post_content;
    print_r($faq->post);
    endwhile;
endif;

我知道我最多只会得到一个结果,因此循环是过大的,但是我只是为了测试而添加了它。无论如何,当我打印帖子时,它会打印正确的帖子,当我使用上面的echo语句时,我的帖子打印得很好,但是当我使用上述的the_content()时,突然我得到的只是一个空白页。 / p>

一个简单的问题:为什么?

2 个答案:

答案 0 :(得分:0)

尝试此代码

$faq = new WP_Query(array('post_type' => 'my_faq', 'p'=>$faq_id));
if ($faq->have_posts()) 
    while ( $faq->have_posts() ) : $faq->the_post();
    the_content();    
    endwhile;
endif;

答案 1 :(得分:0)

当我尝试这样做时,我还是不明白为什么会这样,我设法打印了正确的帖子内容,但是the_content()发布了我网站默认目标网页的内容...但无论出于何种原因,现在开始工作。

就像Stender和KomalR所说,解决方案只是调用全局the_content()而不是查询的the_content()方法。这似乎有点违反直觉,但至少可以奏效,只要您知道那是您应该做的,那么我想这就是全部...

现在效果很好。谢谢。 :)