wordpress自定义页面模板显示帖子两次

时间:2014-11-06 23:19:24

标签: php wordpress custom-pages

我不是wordpress专家,所以想知道是否有人可以帮助我。我为一个页面创建了一个自定义页面模板,因此我可以聚合并显示该页面上一个类别的帖子。但是,到目前为止,我在该类别中创建了一个帖子,但它在页面上显示了两次。从类别中提取的帖子将显示在" div id = main" DIV。这是页面模板代码:

<?php /* Template Name: Deals Page */ ?>
<?php get_header(); ?>

</div>
//<?php while ( have_posts() ) : the_post(); ?>
<div id="title-bar">
    <h1 class="bar-entry-title container"><?php the_title(); ?></h1>
</div>  
<?php endwhile; ?>  
<div class="container col-md-12"><!-- restart previous section-->

<div id="primary" class="content-area col-md-8">
    <main id="main" class="site-main" role="main">



                  <?php query_posts('category_name=deals &posts_per_page=20'); ?>
        <?php while ( have_posts() ) : the_post(); ?>
                             <?php the_title( '<h2>', '</h2>' ); ?>
                              <?php the_content(); ?>
            //<?php get_template_part( 'content', 'page' ); ?>



        <?php endwhile; // end of the loop. ?>
                 <?php
                // If comments are open or we have at least one comment, load up the comment template
                if ( comments_open() || '0' != get_comments_number() )
                    comments_template();
            ?>

    </main><!-- #main -->
</div><!-- #primary -->

<?php get_sidebar(); ?>
<?php get_sidebar('footer'); ?>
<?php get_footer(); ?>

你知道它为什么两次显示帖子吗?我不明白为什么。

1 个答案:

答案 0 :(得分:1)

您正在运行两个循环。你的评论行在第5行的PHP之外。

更改此//<?php while ( have_posts() ) : the_post(); ?>

到此<?php // while ( have_posts() ) : the_post(); ?>

同时注释第9行的第一个<?php endwhile; ?>,否则您将收到PHP错误