即使有一个结果,WP_Query输出两次

时间:2016-10-20 11:45:10

标签: php mysql wordpress templating

我在一个apache环境中有一个wordpress网站(由其他人构建)已被移动到我们的Windows服务器,我有一个奇怪的问题,即一个简单的PhP / WP循环输出相同的结果两次,即使有DB中查询的一个结果。作为一名MVC / .NET开发人员,我不知道下一步该怎么做,因为我无法调试(逐步执行)代码。

<?php 
    if (have_posts()): while (have_posts()) : the_post();
    $query = new WP_query('pagename=about');    
    $query->the_post();
    /* Page Content */
    echo '<h2 class="heading">';
    the_title();
    echo '</h2>';
    echo '<div class="content">';
    the_content();
    echo '</div>';            

?>

<?php endwhile; ?>
<?php endif; ?>

有什么可能导致这种情况或如何设置循环限制的想法?

1 个答案:

答案 0 :(得分:2)

试试这个:

<?php 
    $query = new WP_query('pagename=about'); 
    if ($query->have_posts()): while ($query->have_posts()) :    
    $query->the_post();
    /* Page Content */
    echo '<h2 class="heading">';
    the_title();
    echo '</h2>';
    echo '<div class="content">';
    the_content();
    echo '</div>';            

?>

<?php endwhile; ?>
<?php endif; ?>