抜粋の無限ループ
WordPressでサイトのトップページの投稿一覧の「続きを読む」を何度押しても、ページの内容が表示されず、抜粋の無限ループに・・・。
何度「続きを読む」「この記事を読む」を押しても、ページの内容が表示されない…。
無限ループに
何度「続きを読む」「この記事を読む」を押しても、無限ループに…(^ ^;
パーマリンク設定
これ、調べていると、どうやらパーマリンク設定のカスタム構造の設定に問題がある可能性が高いようでした。
設定していた構造
このようなパーマリンク設定をしていました。
[rml_read_more]
カスタム構造に問題?
どうやら、カスタム構造に、
%year%
%monthnum%
%day%
だけを組み合わせて入れると、上記の無限ループ問題が発生するようです。
試しにカスタム構造を下記のように変えてみると、続きが表示されました。
/%year%%monthnum%/%day%%post_id%
パーマリンクを日付と日時ベースにする場合、%year%, %monthnum%, %day%, %hour%, %minute%, %second% の *すべて* が含まれない限り、単体記事としてみなされません (is_single() が true にならない)。
ja.wordpress.org/support/topic/個別ページで、titleが「日付+ブログタイトル」に/
したがって、このパーマリンク設定では、単体記事を表示させても WordPress 自体は単体記事として扱わない (is_single() が false になる) ため、日時アーカイブと判断され、そういうテンプレートが適用されます。
上記のフォーラムでは、%year%, %monthnum%, %day%, %hour%, %minute%, %second% の全てを入れないと…という感じでしたが、
/%year%%monthnum%/%day%%post_id%
これでもいけました(大丈夫かどうかは定かでないですが…)
まとめ
結局のところ、カスタム構造に
%year% %monthnum% %day%
の組み合わせだけはダメなようです。
他にも、
/%year%%monthnum%%day%/%hour%%minute%
こんな感じのカスタム構造もダメなようです。
(実際に試してみたら、たしかにダメでした)
カスタムパーマリンクにするのであれば、上記に%second%まで入れるか、%post_id%を入れてあげると良さそうな感じです(これが正しいかどうかは定かではありません)
パーマリンク設定には、気をつけましょう。
わかりました!!
同じ原因でトラブルになっているケースが多々あるようです。ご参考にして頂ければと思います。