URL重写中断分页

时间:2013-02-27 作者:souporserious

我一直在四处阅读,似乎无法理解这一点。

除了分页似乎不起作用之外,一切都很正常,我正在添加第二条重写规则,这难道不能解决这个问题吗?

我可以很好地进入第一页,但任何超出第一页的页面都会抛出404。

这是我的代码:

// Rewrite the Sermon URL
function sermon_rewrite() {
    $cpt = \'sermon\';
    $tax = \'series\';

    add_rewrite_rule(
        \'^\'.$cpt.\'/([^/]+)/([^/]+)/([^/]+)/?\',
        \'index.php?post_type=\'.$cpt.\'&\'.$tax.\'=$matches[1]&\'.$tax.\'=$matches[2]&\'.$cpt.\'=$matches[3]\',
        \'top\'
    );
    add_rewrite_rule(
        \'sermon/([^/]+)/page/?([0-9]{1,})/?$\',
        \'index.php?post_type=\'.$cpt.\'&\'.$tax.\'=$matches[1]&paged=$matches[2]\',
        \'top\'
    );
}
add_action(\'init\',\'sermon_rewrite\');

EDIT

如果我转到以下url

这就是我的网站。com/布道/学期/儿童学期/第2页/

这不是:mysite。com/布道/学期/儿童学期/第2页/

知道是什么原因吗?

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

找到了答案。我一切都对,只是没有按正确的顺序调用。我应该在发帖之前匹配页面url的第一个。

这是我的工作代码:

// Rewrite the Sermon URL
function sermon_rewrite() {
    $cpt = \'sermon\';
    $tax = \'series\';

    add_rewrite_rule(
        \'^\'.$cpt.\'/([^/]+)/page/([0-9]+)/?$\',
        \'index.php?post_type=\'.$cpt.\'&\'.$tax.\'=$matches[1]&paged=$matches[2]\',
        \'top\'
    );
    add_rewrite_rule(
        \'^\'.$cpt.\'/([^/]+)/([^/]+)/([^/]+)/?\',
        \'index.php?post_type=\'.$cpt.\'&\'.$tax.\'=$matches[1]&\'.$tax.\'=$matches[2]&\'.$cpt.\'=$matches[3]\',
        \'top\'
    );
}
add_action(\'init\',\'sermon_rewrite\');

SO网友:Jesse

这项工作:mysite.com/sermon/term/childterm/page2/

这不会:mysite.com/sermon/term/childterm/page2/

根据你的重写规则,我猜你的意思是

这项工作:mysite.com/sermon/term/page2/

这不会:mysite.com/sermon/term/childterm/page2/

我不是regex专家所以我只想到adding another rewrite rule 处理儿童期情况

add_rewrite_rule(
        \'sermon/(.*?)/(.*?)/page/?([0-9]{1,})/?$\',
        \'index.php?post_type=\'.$cpt.\'&\'.$tax.\'=$matches[2]&paged=$matches[3]\',
        \'top\'
    );

结束

相关推荐

Gallery Pagination by Row

我在以下位置创建了一个图片库:http://ellenandjosh.com/?page_id=5. 目前,我有一个循环,在一定数量的图像之后显示分页:http://pastebin.com/N6nRRUei.通常情况下,这很好。。。但通常我没有不同宽度的图像。WordPress按高度裁剪图像,宽度可变。我想做的是在三行图像之后,然后添加分页按钮。。。而不是在一定数量的图像后显示分页按钮。。。这可能吗?第1页还可以,虽然底部行中可能会有更多图像-第2页只有两行,第3页第三行只有一个图像-尽管有更多图像。。