Wordpressは、パラメーターのカスタム書き換えルールの競合で404を返します
-
-
書き換えルールをフラッシュしましたか?have you flushed rewrite rules?
- 0
- 2013-06-07
- Tom J Nowell
-
はい、コードを更新するたびに実行しています.yes, im doing it everytime i update my code..
- 0
- 2013-06-07
- reikyoushin
-
モンキーマンリライトアナライザーと一致しますか?Does it match in monkeyman rewrite analyser?
- 0
- 2013-06-07
- Tom J Nowell
-
それは何ですか?o.O?分類法の部分と一致します.問題は、分類法の代わりにカスタム投稿がパラメーターに含まれている場合です.したがって、2番目のパラメーターでカスタム税とカスタム投稿タイプの両方を許可するスイッチが必要です `#basename/(.+)/[ここ]/(.+)/?$# `what is that? o.O? it matches the taxonomy part, the problem is if instead of a taxonomy a custom post is in the parameter.. so i need a switch that would allow both custom tax and custom post type on the 2nd param `#basename/(.+)/[here]/(.+)/?$#`
- 0
- 2013-06-07
- reikyoushin
-
つまり、カスタム投稿タイプは2番目と3番目のパラメーターの両方にすることができ、分類法は2つのレベルであるため、子分類法に投稿タイプを追加すると機能しますが、親分類法に追加すると404になります.in other words, the custom post type can be both on the 2nd and 3rd param, the taxonomy is two levels so adding the post type in the child taxonomy works, but adding it to the parent taxonomy would render a 404..
- 0
- 2013-06-07
- reikyoushin
-
これは、ルールの書き換えに非常に役立つプラグインです.URLを入力すると、一致するルールと優先順位、および抽出されるルールが表示されます.あなたのルールはよく一致するかもしれませんが、プロセスが広すぎるか遅すぎるため、別のルールがそれをキャッチしますit's a plugin that is extremely useful for rewrite rules, you put in a URL and it shows you which rules match and in priority order, and what is extracted. Your rule may well match but be too broad or too late in the process and another rule catches it
- 0
- 2013-06-07
- Tom J Nowell
-
うーん、2番目のパラメータとしてカスタム投稿タイプが必要ですか?しかし、これはあなたの問題があなたの質問とは何の関係もないことを示唆しています.あなたの質問は、私は書き換えルールXを持っているが、404を取得していると言っていますが、この書き換えルールにカスタム投稿タイプを配置するにはどうすればよいですか?hmmm wait you want the custom post type as the second parameter? But this suggests your problem has nothing to do with your question. Your question says I have rewrite rules X but get a 404, not, how do I put the custom post type in this rewrite rule
- 0
- 2013-06-07
- Tom J Nowell
-
ねえ、この@reikyoushinの解決策を見つけましたかHey did you find the solution for this @reikyoushin
- 0
- 2017-08-10
- Pullata Praveen
-
1 回答
- 投票
-
- 2013-06-07
あなたが持っているもの:
- 5番目の部分にある投稿を処理する書き換えルール
- 分類法の部分を処理するための書き換えルール
2番目または3番目の部分にある投稿を処理するための書き換えルールは上記のリストに含まれていないため、404を取得するのはなぜですか.
この書き換えルールを採用する場合:
$newRules['basename/(.+)/(.+)/(.+)/(.+)/?$'] = 'index.php?custom_post_type_name=$matches[4]'; // my custom structure will always have the post name as the 5th uri segment
そして、いくつかの常識を使用して少し変更します.つまり、
-
basename/ (.+)/(.+)/(.+)/(.+) /?$ ....
custom_post_type_name=$matches [ 4 ]
//私のカスタム構造には、常に 5 thuriセグメント
として投稿名が付けられます.
-
basename/ (.+)/(.+)/(.+) /?$ ....
custom_post_type_name=$matches [ 3 ]
//私のカスタム構造には、常に 4 thuriセグメント
として投稿名が付けられます.
-
basename/ (.+)/(.+) /?$ ....
custom_post_type_name=$matches [ 2 ]
//私のカスタム構造には、常に 3 thuriセグメント
として投稿名が付けられます.
etc
既存のルールの前にこれらを昇順で配置し、必要な回数だけ繰り返します
You have:
- A rewrite rule that handles the post being in the 5th part
- A rewrite rule to handle the taxonomy part
A rewrite rule to handle the post being in the 2nd or 3rd part isn't in the above list, hence why you get a 404.
If we take this rewrite rule:
$newRules['basename/(.+)/(.+)/(.+)/(.+)/?$'] = 'index.php?custom_post_type_name=$matches[4]'; // my custom structure will always have the post name as the 5th uri segment
And modify it slightly using some common sense, namely:
basename/(.+)/(.+)/(.+)/(.+)/?$ ....
custom_post_type_name=$matches[4]
// my custom structure will always have the post name as the 5 th uri segment
basename/(.+)/(.+)/(.+)/?$ ....
custom_post_type_name=$matches[3]
// my custom structure will always have the post name as the 4 th uri segment
basename/(.+)/(.+)/?$ ....
custom_post_type_name=$matches[2]
// my custom structure will always have the post name as the 3 th uri segment
etc
Place these in ascending order prior to your existing rule, and repeat as many times as is necessary
-
おっと、私はすでに元のコードからコードを調整しました(コードを一番上に投稿します)、2番目と3番目のサンプルURLで404を取得しません.参照してください.ありがとう!ooops, i've already adjusted my code from the original (will post my code on top), i dont get a 404 on the 2nd and 3rd sample url. please see. thanks!
- 0
- 2013-06-07
- reikyoushin
-
404を取得するのは、投稿が親の分類法の下にあるときだけです.子の分類法の下にある場合は、すべて問題ありません.the only time i get a 404 is when the post is under the parent taxonomy, if its under the child taxonomy everything is fine..
- 0
- 2013-06-07
- reikyoushin
ここに答えるそしてそれは驚異的に機能しました.
しかし、私の問題はこの部分にあります
オリジナルについて:
私のバージョン:
分類法には2つのレベルがあるため、2番目のパラメータ(
custom-post-type-base/(.+)/[here]/
)がカスタム投稿であるか、それともカスタム投稿であるかを認識できませんでした.カスタム分類法.. カスタム分類では正しく返されますが、カスタム投稿タイプでは404が返され、投稿タイプは親分類で分類されます.サンプルURLを参照してください: