Static Front-Page Excerpts

时间:2011-05-28 作者:Bosworth99

在一个新网站上工作,我试图将最近的帖子摘录植入静态首页。我一直在做wordpress之外的所有静态内容(作为静态文件),但可以说,我确信要将所有内容都纳入WP范围。

在用作主页的外部静态文件中,我已经找到了如何包含博客标题的方法<?php require(\'../wordpress/wp-blog-header.php\'); ?> 然后在该页面上调出帖子,效果很好:

<?php 
                        $count = 0; 
                    ?>
                    <?php if ( have_posts() ) while ( have_posts() && $count <= 6 ) : the_post(); ?>
                            <section class="post">
                                <header class="post">
                                    <h2><a class="light" href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( \'Permalink to %s\', \'twentyten\' ), the_title_attribute( \'echo=0\' ) ); ?>" rel="bookmark"><?php the_title(); ?></a></h2>
                                        <?php twentyten_posted_on(); ?>
                                    <div class="hr"></div>
                                </header>
                                <article class="post">
                                    <?php the_excerpt(); ?>
                                </article>
                                <footer class="post">
                                    <?php twentyten_posted_in(); ?>
                                </footer>
                            </section>
                    <?php $count++; ?>
                    <?php endwhile; // end of the loop. ?>
所以,现在,我have 设置wordpress首页模板,并使用我的主题标题和相同的循环块动态交付,我不会posts, 但是pages 返回我没有看到一组当前的帖子,而是得到了我网站上当前3个wp页面的一些标题信息。我知道这是由于url查询变量造成的,但我不清楚如何找到它。

我试着手动调用new WP-Query(); 但那根本没有任何回报。虽然我怀疑它可能会起作用,但考虑到适当的论据。。。

有没有想过如何通过这个修改后的循环将最近的帖子而不是页面列表拉到静态首页?

非常感谢-

2 个回复
最合适的回答,由SO网友:Bosworth99 整理而成

啊-明白了-新的WP\\u查询就快到了,但未能对其调用查询方法。。。这非常有效:

<?php 
                            $excerptQuery = new WP_Query();
                            $excerptQuery->query(\'showposts=6\');
                        ?>
                        <?php if ( $excerptQuery->have_posts() ) while ( $excerptQuery->have_posts()) : $excerptQuery->the_post(); ?>
                                <section class="post">
                                    <header class="post">
                                        <h2><a class="light" href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( \'Permalink to %s\', \'twentyten\' ), the_title_attribute( \'echo=0\' ) ); ?>" rel="bookmark"><?php the_title(); ?></a></h2>
                                            <?php twentyten_posted_on(); ?>
                                        <div class="hr"></div>
                                    </header>
                                    <article class="post">
                                        <?php the_excerpt(); ?>
                                    </article>
                                    <footer class="post">
                                        <?php twentyten_posted_in(); ?>
                                    </footer>
                                </section>
                        <?php endwhile; // end of the loop. ?>

SO网友:Chip Bennett

是否有任何特殊原因不使用front-page.php 模板文件,而不去尝试将WordPress标题拉入外部文件?

使用front-page.php 模板文件很简单:

创建一个具有任意名称的新静态页面(我们称之为“首页”)

  • 转到Dashboard -> Settings -> Reading 并将“Front Page Displays”(首页显示)设置为“Static Page”(静态页面)。将“Front Page”(首页)下拉列表设置为在步骤1中创建的“Front Page”(首页)静态页面front-page.php, 并包括上面的自定义循环代码
  • 此外,还应将主循环查询作为front-page.php, 而不是使用&& $count <= 6 循环调用中的条件。

    我建议用一个简单的电话get_posts(), 并设置numberposts 参数到6.

    结束

    相关推荐

    Custom Author Loop

    本质上,我想做的是与wp\\u list\\u authors标记具有相同的效果,但我不想只列出名称或他们的帖子数量,而是希望能够使用ID进行循环。最终,我想有一个页面与每个作者,与他们的名字,描述,化身和链接。我可以弄清楚具体情况,我只需要一种方法来做如下事情:foreach $author as $author->ID 提前感谢,皮特