解决wordpress自定义分类法分页404问题

在使用wordpress自定义分类法创建好分类,然后在做列表页面需要分页时,发现点击第二页时出现了404,经过反复测试,发现根本就没找到这个列表页面。

第一反应肯定是规则出现问题,于是就开始弄wordpress的规则链接,果不其然确实是规则的问题,下面是解决的代码,将其加到function.php中,并且需要点击 后台“设置->固定链接” 更新

function generate_taxonomy_rewrite_rules( $wp_rewrite )
{
$rules = array();
$post_types = get_post_types( array( 'public' => true,'_builtin' => false ),'objects' );

foreach ( $post_types as $post_type ) {
$post_type_name = $post_type->name;
$post_type_slug = $post_type->rewrite['slug'];
$rules[$post_type_slug . '/page/([0-9]+)/?$'] = 'index.php?post_type='.$post_type_slug . '&page=' . $wp_rewrite->preg_index( 1 );
}
$wp_rewrite->rules = $rules + $wp_rewrite->rules;
}

add_action('generate_rewrite_rules','generate_taxonomy_rewrite_rules');

注意这个是分页的动态地址:’index.php?post_type=’.$post_type_slug . ‘&page=’ . $wp_rewrite->preg_index( 1 );

若是出现别的地方点击404的问题,十有八九也是这个问题。

相关文章

我想将wordpress的默认接口路由改掉,愿意是默认的带一个 wp...
wordpress自定义分类法之后,我看到链接都自动在后面添加了一...
事情是这样的,我用 get_post_type 函数创建了一个自定义分类...
最近网站莫名其妙的被顶上了,过一个多小时,就注册一个账号...
最近服务器要到期了,就想着把网站转移到另外一台服务器,本...
今天在写wordpress的接口,然后碰到个奇怪的问题,怎么访问都...