WordPressのマルチサイトインストールがあります。私が登録したすべての規則を見ることができるように私はプラグインMonkeyman Rewrite Analyzerをインストールしました。以下のコードは、私がどのようにルールを登録しているかです。
add_action( 'init', 'add_init_rules' );
function add_init_rules() {
add_rewrite_rule('^car/([^/]*)/([^/]*)/?','index.php?pagename=car&id=$matches[1]&make=$matches[2]','top');
}
私が追加したルールは、Monkeyman Rewrite Analyzerリストには表示されず、mysite.com/32423/testmakeにアクセスしようとしたときにサイトに影響を与えるようには見えません。
助言がありますか?
このコードを作成した後、ルールをフラッシュしましたか?
設定 - >パーマリンク画面にアクセスしてください。これによりルールがフラッシュされます。その後、新しいルールが表示されるかどうかを確認してください。
追加したルールは「非wpルール」、つまりhtaccessに追加されたルールです。悲しいことに、マルチサイトではこれらのルールは完全に無視され、あなたのhtaccessに書かれません。マルチサイトが有効な場合、WordPressはハードコードされたhtaccessルールを使用します。私はこれで苦労し、まだ解決策を見つけていません(直接htaccessを編集することを除いて)。