質問するログイン新規登録

質問編集履歴

1

自分で試した内容を追記

2017/12/25 01:28

投稿

Nerf.this
Nerf.this

スコア14

title CHANGED
File without changes
body CHANGED
@@ -74,4 +74,36 @@
74
74
  return $vars;
75
75
  }
76
76
  ```
77
- この場合、`http://example.com/rewriterules/detail1/type1/`にアクセスすると`http://example.com/rewriterules/`と同じページが表示されましたが、固定ページ名の部分を記事スラッグに変えられないのではないかと思い、現状の方法に変えました。
77
+ この場合、`http://example.com/rewriterules/detail1/type1/`にアクセスすると`http://example.com/rewriterules/`と同じページが表示されましたが、固定ページ名の部分を記事スラッグに変えられないのではないかと思い、現状の方法に変えました。
78
+
79
+
80
+
81
+ ###追記
82
+ --- 一応意図通り動いたコード
83
+ functions.php
84
+ ```
85
+ add_action('init', 'my_add_single_rewrite_endpoint');
86
+ function my_add_single_rewrite_endpoint() {
87
+ add_rewrite_endpoint('detail01', EP_PERMALINK, 'type');
88
+ add_rewrite_endpoint('detail02', EP_PERMALINK, 'type');
89
+ add_rewrite_endpoint('detail03', EP_PERMALINK, 'type');
90
+ }
91
+ ```
92
+ これで記事ページのパーマリンクの最後に`/detail01/xxx/`を付けてアクセスすると無事アクセスでき、最後のxxxの部分の文字列がtypeという名前のパラメータとして認識されるようになりました。
93
+
94
+ しかし、テンプレートに切り替えは、
95
+ ```
96
+ <?php
97
+ $url = $_SERVER['REQUEST_URI'];
98
+
99
+ if (strstr($url, 'detail01')) {
100
+ get_template_part('single-detail01');
101
+ }elseif (strstr($url, 'detail02')) {
102
+ get_template_part('single-detail02');
103
+ }elseif (strstr($url, 'detail03')) {
104
+ get_template_part('single-detail03');
105
+ }else {
106
+ get_template_part('single-top');
107
+ }
108
+ ```
109
+ というゴリ押し分岐で実装しています…笑