我如何创建一个模板页面来显示3篇博客文章?

时间:2013-09-04 作者:Eric

我创建了一个博客主题,每页显示一篇文章。为此,我只需设置single.php 按照我想要的方式,我有一些代码可以将导航中的“博客”项目链接到最新的博客文章,一切都很好。耶。

现在客户端希望每页看到3篇帖子,所以我创建了一个新的template-blog.php 文件,然后创建页面a/blog 一行显示三篇文章。

我的template-blog.php 文件以循环开始:

    if ( have_posts() ) {
        while ( have_posts() ) {
            the_post(); 
然而它从来没有得到任何帖子,所以/blog 显示空白日志。

如何让Wordpress为该模板提供3篇博客文章?

我试着将“设置/阅读”中每页的博客帖子数量增加到3,但没有效果。然后我将我的“帖子”页面(也在设置/阅读中)设置为博客模板,现在它使用content.php 文件显示一篇博客文章(很差),并完全忽略我的template-blog.php 文件我甚至不知道content.php 在此之前归档?!

我认为答案是我可能不应该使用template-blog.php 文件,相反,我应该更改一些其他文件以同时显示三篇文章。我可以编辑content.php 因此,它正确地显示了一篇文章,但页面设计的其余部分仍然需要存在(如我为博客提供的特殊标题等,目前在template-blog.php). 怎样

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

在自定义页面模板中开始帖子循环之前,您需要使用wp_query()get_posts() 做这样的事。

    $args = array(
        \'posts_per_page\' => 3
    );

    $my_query = new WP_Query($args);

    // now start your loop
    if ( $my_query->have_posts() ) {
        while ( $my_query->have_posts() ) {
            $my_query->the_post();
            // print post data, title, content .etc

        }
    }

结束

相关推荐

自定义WP_POSTS_LIST_TABLE类

如何在wp admin/edit中自定义记录表的输出。php?有哪些选项可供编辑display_tablenav(\'top\') 和display_tablenav(\'bottom\') 在课堂上输出之前WP_Posts_List_Table?我想在显示记录的表格和过滤器之间插入我的块,例如:<h3>Titlle</h3>. 不管怎样。法典中写道:此类的访问被标记为私有。这意味着它不适用于插件和主题开发人员,而仅适用于其他核心函数和类。也许有某种方法不会改变内核。