禁用特定页面的WordPress分页URL重写

时间:2012-09-25 作者:matr07

我希望有人能帮我解决以下问题。我有一个wordpress页面:http://www.howdesign.com/design-jobs 还有一个来自behance的工作列表。net通过JavaScript。单击“下一页”或特定页码时,URL应如下所示:/design jobs/?回调=作业列表。搜索&重新分页;第2页(&P);排序=发布日期(&U);状态=当前

但是,WordPress会自动接受“page=2”,并将URL重写为

/design-jobs/2/?callback=Joblist.search.repage&sort=published_date&status=current
(我无法发布两个以上的URL,因此缩短了版本)。请注意,数字2现在已超出查询字符串,并且“page=2”也已删除。然后,这会中断此页面上作业列表的分页。

我想知道是否有办法禁用特定页面的这种重写行为,以允许分页正常工作。

1 个回复
最合适的回答,由SO网友:Milo 整理而成

这个redirect_canonical 筛选器负责此操作,您可以根据请求的页面有选择地禁用此操作。这是未经测试的,但应该可以:

function wpa66273_disable_canonical_redirect( $query ) {
    if( \'design-jobs\' == $query->query_vars[\'pagename\'] )
        remove_filter( \'template_redirect\', \'redirect_canonical\' );
}
add_action( \'parse_query\', \'wpa66273_disable_canonical_redirect\' );

结束

相关推荐

Pagination on 2nd loop

好的,我正在创建一个业务列表网站,该网站使用列表“类型”的自定义分类法。我需要在分类法归档页面上显示两个循环,一个用于“赞助”列表,另一个用于常规列表。分类法存档:http://pastie.org/3187162分页功能:http://pastie.org/3187168这两部分都在做我想做的事情,但有一个问题:在一个特定类别中大约有50个非赞助商列表,但第二个查询最多有5个“页面”(即,如果我将posts\\u per\\u page设置为5,则有25个列表,如果我将posts\\u per\\u p