質問編集履歴

4

追記

2022/02/09 11:33

投稿

erp
erp

スコア46

test CHANGED
File without changes
test CHANGED
@@ -61,6 +61,28 @@
61
61
  ```
62
62
  こちらに書き換えてみましたが、404のままでした。
63
63
 
64
+ ?works=slug で個別ページが表示されるので
65
+ ```php
66
+ function generateCustomPostLink($link, $post){
67
+ if($post->post_type === 'works'){
68
+ // 投稿IDに書き換えたパーマリンク文字列を返す
69
+ return home_url('/'.$post->post_name.'/');
70
+ } else {
71
+ return $link;
72
+ }
73
+ }
74
+ function addRewriteRules($rules){
75
+ $new_rules = array();
76
+ $new_rules['/([^/]+)/?$'] = 'index.php?works=$matches[1]';
77
+ return $new_rules + $rules;
78
+ }
79
+ add_filter('post_type_link', 'generateCustomPostLink', 1, 2);
80
+ add_filter('rewrite_rules_array', 'addRewriteRules');
81
+ ```
82
+ としましたが、該当ページは404のままでした。
83
+
84
+ ほかのページは問題なく表示されていますが、やろうとしていることがダメなんでしょうか?
85
+
64
86
  ### 補足情報(FW/ツールのバージョンなど)
65
87
 
66
88
  Firefox 最新版

3

追記

2022/02/09 10:50

投稿

erp
erp

スコア46

test CHANGED
File without changes
test CHANGED
@@ -59,6 +59,7 @@
59
59
  add_filter('post_type_link', 'generateCustomPostLink', 1, 2);
60
60
  add_filter('rewrite_rules_array', 'addRewriteRules');
61
61
  ```
62
+ こちらに書き換えてみましたが、404のままでした。
62
63
 
63
64
  ### 補足情報(FW/ツールのバージョンなど)
64
65
 

2

追記

2022/02/09 10:45

投稿

erp
erp

スコア46

test CHANGED
File without changes
test CHANGED
@@ -34,6 +34,32 @@
34
34
  調べて出てきたコードをもとに function.php を書いてみたのですが、ドメイン直下に書き換わったものの404エラーになってしまいます。
35
35
  どうすれば、404でなくなるか、ご助力いただけないでしょうか。
36
36
 
37
+ ```php
38
+ function generateCustomPostLink($link, $post){
39
+ if($post->post_type === 'works'){
40
+ // スラッグに書き換えたパーマリンク文字列を返す
41
+ return home_url('/'.$post->post_name.'/');
42
+ } else {
43
+ return $link;
44
+ }
45
+ }
46
+ function custom_rewrite_tag()
47
+ {
48
+ add_rewrite_tag('%myvalue%', '([^&]+)');
49
+ }
50
+ add_action('init', 'custom_rewrite_tag', 10, 0);
51
+ function addRewriteRules($rules){
52
+ //追加するリライトルールの配列を初期化
53
+ $new_rules = array();
54
+ //追加するリライトルールの配列を作成
55
+ $new_rules['/([^/]+)/?$'] = 'index.php?post_type=works&myvalue=$matches[1]';
56
+ // ルール配列に結合
57
+ return $new_rules + $rules;
58
+ }
59
+ add_filter('post_type_link', 'generateCustomPostLink', 1, 2);
60
+ add_filter('rewrite_rules_array', 'addRewriteRules');
61
+ ```
62
+
37
63
  ### 補足情報(FW/ツールのバージョンなど)
38
64
 
39
65
  Firefox 最新版

1

x

2022/02/09 10:11

投稿

erp
erp

スコア46

test CHANGED
File without changes
test CHANGED
@@ -21,7 +21,7 @@
21
21
  function addRewriteRules($rules){
22
22
  // 書き換えたパーマリンクに対応したクエリルールを追加
23
23
  $new_rule = array(
24
- '/?$' => 'index.php?post_type=works&name=$matches[1]'
24
+ '/?$' => 'index.php?post_type=works&p=$matches[1]'
25
25
  );
26
26
  // ルール配列に結合
27
27
  return $new_rule + $rules;