回答編集履歴
1
返信
answer
CHANGED
@@ -19,4 +19,40 @@
|
|
19
19
|
って感じでしょうか
|
20
20
|
|
21
21
|
template_includeフィルタはコメントの種類ごとに表示内容が全然違うので
|
22
|
-
テンプレートファイル自体を切り替えたいとかいう場合に使います
|
22
|
+
テンプレートファイル自体を切り替えたいとかいう場合に使います
|
23
|
+
|
24
|
+
---
|
25
|
+
|
26
|
+
add_rewrite_rule();は**正規表現**による
|
27
|
+
URLを書き換え設定を追加します
|
28
|
+
正規表現を知らないと道のりはさらに長く険しく…
|
29
|
+
|
30
|
+
```php
|
31
|
+
add_rewrite_rule(
|
32
|
+
'mypost_type/([0-9]+)/(\w+)/',
|
33
|
+
'index.php?post_type=mypost_type&p=$matches[1]&page_type=$matches[2]',
|
34
|
+
'top'
|
35
|
+
);
|
36
|
+
```
|
37
|
+
|
38
|
+
これで、例えば
|
39
|
+
http://example.com/mypost_type/63/hoge/
|
40
|
+
は
|
41
|
+
http://example.com/index.php?post_type=mypost_type&p=63&page_type=hoge
|
42
|
+
にリダイレクトされるようになります
|
43
|
+
|
44
|
+
第3引数のtopは書き換えルールの優先順位を先頭にってことです
|
45
|
+
wordpressの固定ページとかのリライトルールがほとんどのパターンを引っ掛けてしまうので
|
46
|
+
ここは割とtop以外の選択肢がないです
|
47
|
+
|
48
|
+
add_rewrite_tag()はadd_permastruct()とセットで使うもので
|
49
|
+
add_rewrite_rule()に渡す引数の生成の設定をする関数です
|
50
|
+
|
51
|
+
管理画面のパーマリンク設定でカスタムURLの設定にも使いたいとか
|
52
|
+
いろんなパーマリンクで同じ書き換えルールのパーツを使うというときに使います
|
53
|
+
|
54
|
+
他のカスタム投稿タイプやページタイプでも同様に子ページを作れるようにしときたい
|
55
|
+
とかいうような場合はadd_rewrite_tag()+add_permastruct()でやっておくのもいいです
|
56
|
+
|
57
|
+
特定のカスタム投稿でしか使わないとかなら
|
58
|
+
add_rewrite_rule()でやっといた方が手間が少ないです
|