wordpress中自定义查询后分页

当使用WordPress时,主循环默认根据URL中的page参数进行分页。但若page值超过实际数据量,会导致404错误。为解决这个问题,可以在template-loader.php的筛选行为中干预,将$wp_query中的is_category设为true,is_404设为false,限制自定义分页只在特定分类中生效。通过修改get_category_template()获取自定义分页模板,最终实现自定义查询后的分页功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

         wordpress主循环会按照url中的page这个参数来自动分页数据,但是如果你的page值超出了主循环拥有的数据量,就会被定义到404页面去。在自己的页面写的代码也不会被加载。

       想要自己的页面接收到page参数,就要在加载404页面之前跳转到自己的页面去。

      在template-loader.php里,加载模板之前会有一个筛选行为,我们可以在这上面做文章。下面是template-loader.php里的几行代码,看看就可以了,不要改动。

	if ( $template = apply_filters( 'template_include', $template ) )
		include( $template );
	return;

       在自己主题的functions.php 里 ,给template_include加一个函数‘’change404ToCategory”(这里是我自己定义的函数名,各位可以随意定),下面是代码:
add_filter('template_include','change404ToCategory');

function change404ToCategory($template){//exit();
	global $wp_query;
	$wp_query->is_category = true;
	$wp_query->is_404 = false;
	if(is_category('xxxx')){
            $template = get_category_template();
	}
	return $template;
}

我是要定义

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值