在我的网站上,我想要一个登陆/主页和一个博客页面。我进入“设置”>“阅读”>“您的主页显示“静态页面””,然后选择我的主页和博客页面。
我的主题对帖子使用网格布局。在我的主页上,我想显示 6 个帖子,然后显示指向 /blog 上其余帖子的“更多帖子”链接。
我希望主页显示像我的主题设置一样的帖子。我使用的任何小部件或插件都不会像我的主题那样显示帖子,所以我正在考虑编辑
<?php while (have_posts()) : the_post(); ?>
代码仅显示最新 6 篇帖子。并将其添加到“主页”页面。这可能吗?
下面是我的主题如何显示帖子的图片。
简而言之,您需要将 frontpage 的主 WP_Query 设置为“post_per_page”参数设置为 6。您可以使用 pre_get_post 挂钩来更改主查询。 WP_Query 提供了一个 is_front_page 方法来检查查询是否是首页。
在主题的 functions.php 中,添加以下行:
add_action('pre_get_posts','alter_query');
function alter_query(WP_Query $query) {
if ($query->is_front_page()) {
// Only alter the frontpage main query
$query->set('post_per_page', 6);
}
}
have_posts()、the_post() 函数都适用于主 WP_Query 对象。因此,一切都应该根据新的查询设置进行工作。