因此,对于成千上万使用WP作为CMS的人来说,一种典型的方法是使用设置>阅读管理页面中的“静态页面”选项。
然而,我的情况不同:我们的首页显示的是静态内容(home.php驱动它),我们有一个第二个静态页面(称为新闻),它应该显示最新帖子的列表(通常在普通博客的首页上可以找到)。
我将新闻页面设置为使用自定义模板(page NewsIndex.php);基于二十十的档案。php模板,这个文件显示一个标题,调用rewind\\u posts(),然后调用get\\u template\\u part(\'loop\',\'newindex\'),这样我们就进入了循环。php(或loop-newsindex.php,如果存在)。桃子。
循环。php有您典型的循环结构(同样,基于TwentyTen的loop.php模板-经过调整以简化,因为我们不需要3种类型的循环):
<?php while ( have_posts() ) : the_post(); ?>
然而,当我们访问该页面时,这个循环似乎使用当前URL来确定要显示的帖子,就好像新闻页面定义了一个类别一样——这对我们来说并非如此。我可以使用什么样的query\\u帖子来模拟WP通常在您访问典型博客首页时为您运行的query\\u帖子?
最合适的回答,由SO网友:Adam Thompson 整理而成
我在博客上检索帖子的方法是使用以下内容:
<?php $recentPosts = new WP_Query(); $recentPosts->query(\'showposts=5&cat=CAT_ID_GOES_HERE\'); while($recentPosts->have_posts()): $recentPosts->the_post(); ?>
然后,您可以创建代码来控制每个帖子的显示。因此,举一个非常简单的例子:
<h1 class="title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
然后在文章的末尾,您只需结束while循环:
<?php endwhile; ?>