Wordpress 自定义文章类型的显示以及分页问题

前提:自己开发了一套主题,并且全局使用了自定义了文章类型。

首页调用了四个分类来显示,并且每个分类显示8个文章,使用查询方式如下:

$args = array('post_type'=>'video', 'cat'=> 5);
$loop = new WP_Query($args);

为了脱离后台阅读中的文章显示数量,在 function 中加入对首页文章查询数量条件的显示

其他分类和标签依然使用后台阅读设置的文章显示数量

//自定义首页查询显示文章数量及类型
add_action( 'pre_get_posts', 'add_my_post_types_to_query' );
function add_my_post_types_to_query( $query ) {

    //首页文章显示数量
    if( is_home() && $query->is_main_query()) {
        $query->set('posts_per_page',8);//首页每页显示8篇文章
    }

    //定义分类页面的显示文章类型
    if ( is_category() || is_tag() || is_search() && $query->is_main_query()) {
        $query->set('post_type', array('video'));
    }

    return $query;
}

这样有一个好处,你在分类和标签页面等,就不必使用自定义 WP_Query 查询语句了,直接使用 have_post() 即可

 

碰到一个一个问题,关于分页的,在这里描述一下,在没有按照上面所作之前,分类页面采用 WP_Query 自定义文章查询类型以及显示文章数量来进行文章输出,然后安装使用了 WP-PageNavi 分页插件,并且在分页的位置添加了 wp_pagenavi() 方法,

然后就碰见一个很意外的问题,刚开始是没有分页数据,后来捣鼓出来了分页,但是点进去是 page/2 出现404报错,昨天晚上开始发现此问题,各种一顿乱搜没有找到解决方案,然后早上醒来又开始搜此问题,使用百度不行,就是用google,但是搜索结果大都类似,并没有解决方案,然后早上跑步回宿舍洗澡时,顿时想到了问题,主要有两点,第一是使用 WP_Query 自定义查询的问题好像分页不好使,第二突然想到应该使用 pre_get_posts 这个钩子来进行查询语句进行对查询数量,文章类型等控制,这样就直接可以在分类和标签页面直接使用 have_post() 来循环数据了,然后早上进行了测试,分页果然正常!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WordPress自定义分页可以通过使用内置方法the_posts_pagination来输出分页式导航。这个方法可以根据后台设置的文章篇数来影响分页功能。使用方法如下: the_posts_pagination(参数); 其中,参数可以根据需要进行设置。你可以参考了解更多关于参数的说明和用法。 此外,你还可以在index.php页面中添加相应的代码来实现自定义分页。可以在样式文件中引入style.css,然后在代码中通过循环显示文章标题、发布时间等相关信息,并在需要显示分页的地方调用lingfeng_pagenavi()函数来实现分页导航。你可以参考了解更多关于index.php页面的代码示例。 如果你在WordPress官方或者其他资源中没有找到合适的分页控件,可以尝试在搜索引擎中使用不同的关键词进行搜索,可能会找到适合你的需求的分页控件。一些搜索引擎如搜狗也可以提供相关的搜索结果,可能会有适合你的分页控件。你可以参考了解更多关于寻找WordPress分页控件的经验。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [wordpress自定义分页控件、获取文章中第1张图片](https://blog.csdn.net/tiz198183/article/details/125003497)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值