質問編集履歴

1

自分で試した内容を追記

2017/12/25 01:28

投稿

Nerf.this
Nerf.this

スコア14

test CHANGED
File without changes
test CHANGED
@@ -151,3 +151,67 @@
151
151
  ```
152
152
 
153
153
  この場合、`http://example.com/rewriterules/detail1/type1/`にアクセスすると`http://example.com/rewriterules/`と同じページが表示されましたが、固定ページ名の部分を記事スラッグに変えられないのではないかと思い、現状の方法に変えました。
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+ ###追記
162
+
163
+ --- 一応意図通り動いたコード
164
+
165
+ functions.php
166
+
167
+ ```
168
+
169
+ add_action('init', 'my_add_single_rewrite_endpoint');
170
+
171
+ function my_add_single_rewrite_endpoint() {
172
+
173
+ add_rewrite_endpoint('detail01', EP_PERMALINK, 'type');
174
+
175
+ add_rewrite_endpoint('detail02', EP_PERMALINK, 'type');
176
+
177
+ add_rewrite_endpoint('detail03', EP_PERMALINK, 'type');
178
+
179
+ }
180
+
181
+ ```
182
+
183
+ これで記事ページのパーマリンクの最後に`/detail01/xxx/`を付けてアクセスすると無事アクセスでき、最後のxxxの部分の文字列がtypeという名前のパラメータとして認識されるようになりました。
184
+
185
+
186
+
187
+ しかし、テンプレートに切り替えは、
188
+
189
+ ```
190
+
191
+ <?php
192
+
193
+ $url = $_SERVER['REQUEST_URI'];
194
+
195
+
196
+
197
+ if (strstr($url, 'detail01')) {
198
+
199
+ get_template_part('single-detail01');
200
+
201
+ }elseif (strstr($url, 'detail02')) {
202
+
203
+ get_template_part('single-detail02');
204
+
205
+ }elseif (strstr($url, 'detail03')) {
206
+
207
+ get_template_part('single-detail03');
208
+
209
+ }else {
210
+
211
+ get_template_part('single-top');
212
+
213
+ }
214
+
215
+ ```
216
+
217
+ というゴリ押し分岐で実装しています…笑