功能介绍
WordPress默认第一页的置顶文章不在数量内,那么如果你设置首页文章数量为10的话,你有四篇置顶文章,那么他就会显示14篇文章,这样让首页的文章不美观,我们可以增加一个代码来控制文章数量。
代码仅第一页文章有效,第二页以后和用户中心的文章数量是你后台设置的文章数量(不受置顶文章的影响)
修复bug
- 修复首页总页数显示错误
- 暂未实现其他页面置顶
代码
function modify_pre_get_posts($query) {
if ($query->is_home() && $query->is_main_query()) {
$sticky_posts = get_option('sticky_posts');
$sticky_count = count($sticky_posts);
$posts_per_page = get_option('posts_per_page');
if (!$query->is_paged()) {
if ($sticky_count > 0) {
$query->set('posts_per_page', $posts_per_page - $sticky_count);
}
} else {
if (!empty($sticky_posts)) {
$query->set('post__not_in', $sticky_posts);
$offset = ( $query->query_vars['paged'] - 1 ) * $posts_per_page - count($sticky_posts);
$query->set('offset', $offset);
}
}
}}
add_action('pre_get_posts', 'modify_pre_get_posts');
function adjust_pagination() {
if (is_home()) {
global $wp_query;
$total_posts = $wp_query->found_posts;
$sticky_posts = get_option('sticky_posts');
$sticky_count = count($sticky_posts);
$posts_per_page = get_option('posts_per_page');
$total_posts -= $sticky_count;
$total_pages = ceil($total_posts / $posts_per_page);
$wp_query->max_num_pages = $total_pages;
}}
add_action('wp', 'adjust_pagination');
© 版权声明
1、本网站名称:三尾狐
2、本站永久网址:www.sanweihu.com
3、本网站的文章部分内容来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站资源仅供学习和交流使用,版权归原作者所有,请在下载后24小时之内自觉删除。
5、本站大部分下载资源收集于网络,不保证其完整性以及安全性,不提供技术支持,请下载后自行研究。
6、若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。
2、本站永久网址:www.sanweihu.com
3、本网站的文章部分内容来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站资源仅供学习和交流使用,版权归原作者所有,请在下载后24小时之内自觉删除。
5、本站大部分下载资源收集于网络,不保证其完整性以及安全性,不提供技术支持,请下载后自行研究。
6、若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。
THE END
暂无评论内容