WordPress 如何实现 “文章归档” 页面

文章来源

您是否想实现和某些轻博客程序里有的 “文章归档/时间轴” 页面?

在本文中,我将向您展示如何如何实现 “文章归档” 页面。
有许多不同的方法可以实现这个需求。您可以使用短代码(shortcode)在页面上显示文章、或可使用插件在页面上显示文章,最后您可以使用自定义模板和循环显示所有文章。
本文将涵盖所有三种方法,从最适合初学者的方法开始。

方法 1:使用 Display Posts Shortcode 插件

您需要做的事是安装并激活 Display Posts Shortcode 插件。
此插件开箱即用,并且没有您可以配置的设置。
创建一个新页面并将其命名为 Archives 或其他任何标题。 之后,粘贴以下短代码到页面内容中:

[ display-posts posts_per_page="1000" order="DESC" ]
(去掉方括号周围的空格)

此短代码将按时间顺序(新文章在顶部)显示所有文章标题的列表,显示最多 1000 篇文章。
如果你有超过一千篇文章,那么你可以将 posts_per_page 改至更大的数字。 您还可以将 order(顺序)更改为 ASC,它就会按时间逆序显示帖子(旧文章在顶部)。
虽然该短代码还有显示摘要、缩略图和其他相关信息的参数,但我不建议您这样做。 当您在页面上列出所有文章的 摘要、缩略图等 时,那页面就会变得很长,这与我们 “简单快速” 的初衷相违。 只显示文章标题就足够了。
如果要根据类别或其他参数显示文章,可以按照其文档页面(英文)上的详细使用说明进行操作。

方法 2:使用 Simple Yearly Archive 插件

在单个页面上显示所有文章可能会导致页面太长。 您可以通过显示以年分类的列表来解决这个问题。 这样,用访客可以单击年份来展开它,并查看当年发布的文章。
您需要做的事是安装并激活 Simple Yearly Archive 插件。
激活后,您需要转到 “设置→Simple Yearly Archive(简单年度存档页面)” 以设置插件。

该插件允许您以各种方式显示文章列表。 您可以在年度档案的链接下显示它们,也可以在可折叠的年份列表下显示它们。
若选择后者,则需要在 “之前/之后(年份标题)” 选项旁边添加<div> 和</div>。
其余的插件选项就很好理解了,您可以根据需要进行设置。
不要忘记单击保存更改按钮来存储您的设置。
现在,要在页面上显示所有文章,只需将 [SimpleYearlyArchive]短代码添加到您想显示的页面即可。
该插件提供了一系列可与短代码一起使用的参数。 您可以在插件的文档页面(英文)上查看参数。

方法 3:使用模板代码实现显示所有文章

使用插件显示所有文章是最简单的方法,但有些人可能想学习如何使用页面模板代码。
首先,您需要创建自定义页面模板并从 page.php 文件中复制结构。
之后,您将使用下面的循环显示所有文章。

<?php
// the query
$wpb_all_query = new WP_Query(array('post_type'=>'post', 'post_status'=>'publish', 'posts_per_page'=>-1)); ?>
<?php if ( $wpb_all_query->have_posts() ) : ?>
<ul>
    <!-- the loop -->
    <?php while ( $wpb_all_query->have_posts() ) : $wpb_all_query->the_post(); ?>
        <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
    <?php endwhile; ?>
    <!-- end of the loop -->
</ul>
    <?php wp_reset_postdata(); ?>
<?php else : ?>
    <p><?php _e( '还没有文章哦~' ); ?></p>
<?php endif; ?>

如果上述代码说明没有意义,我建议您使用方法 1。