私のWPサイトの1つに重大な問題があります。 Plaeseは私の書き換えルールを見てみましょう:WP:余分なページを作成せずにadd_rewrite_rule()を行う方法
function set_rewrite_rules(){
add_rewrite_tag('%posttype%', '([^&]+)');
add_rewrite_rule('^expertise[/]([^/]+)[/]([^/]+)[/]page[/]([0-9]+)[/]?',
'index.php?expertise=$matches[1]&posttype=$matches[2]&paged=$matches[3]',
'top');
add_rewrite_rule('^expertise[/]([^/]*)[/]articles[/]([^/]+)[/]?',
'index.php?article=$matches[2]',
'top');
add_rewrite_rule('^expertise[/]([^/]*)[/]verdicts[/]([^/]+)[/]?',
'index.php?verdict=$matches[2]',
'top');
add_rewrite_rule('^expertise[/]([^/]*)[/]laws[/]([^/]+)[/]?',
'index.php?law=$matches[2]',
'top');
add_rewrite_rule('^expertise[/]([^/]*)[/]prosecutions[/]([^/]+)[/]?',
'index.php?prosecution=$matches[2]',
'top');
add_rewrite_rule('^expertise[/]([^/]+)[/]([^/]+)[/]?',
'index.php?expertise=$matches[1]&posttype=$matches[2]',
'top');
}
add_action('init', 'set_rewrite_rules');
をそれは素晴らしい作品が、それはのような余分なページがたくさんcreats:
通常は404を返しますが、現在はそれらのページ作品のはずです/expertise/[EX-NAME]/page/2/page/4/page/3/page/2/page/4/page/2/
を&は通常の有効なページのようです。 期待される結果:ページネーションは1回だけ一致するようにしてください。例えば:
/expertise/[EX-NAME]/page/2/
すべてがset_rewrite_rules
がコメントアウトされながら期待通りに動作します。
最初の書き換えルールの最後に '$'を追加して、何が起こるかを確認してください。 – revo
@revoはそれを試しました。 add_rewrite_rule( '^専門知識[/]([^ /] +)[/]([^ /] +)[/]ページ[/]([0-9] +)[/] –
この特定のリライトを削除するとどうなるでしょうか?(例: "$"、index.php?expert = $ matches [1]&posttype = $ matches [2]&paged = $ matches [3]ルール? – revo