WordPressでサイトのトップページの投稿一覧の「続きを読む」を何度押しても、ページの内容が表示されず、抜粋の無限ループに・・・。

何度「続きを読む」「この記事を読む」を押しても、ページの内容が表示されない…。

何度「続きを読む」「この記事を読む」を押しても、無限ループに。

これ、調べていると、どうやらパーマリンク設定カスタム構造の設定に問題がある可能性が高いようでした。

 

設定していた構造

http://MYDOMAIN//%year%%monthnum%/%day%.html

 

どうやら、カスタム構造に

%year%

%monthnum%

%day%

だけを組み合わせて入れると、上記の無限ループ問題が発生するようです。

 

 

試しにカスタム構造を下記のように変えてみると、続きが表示されました。

/%year%%monthnum%/%day%%post_id%.html

 

パーマリンクを日付と日時ベースにする場合、%year%, %monthnum%, %day%, %hour%, %minute%, %second% の *すべて* が含まれない限り、単体記事としてみなされません (is_single() が true にならない)。
したがって、このパーマリンク設定では、単体記事を表示させても WordPress 自体は単体記事として扱わない (is_single() が false になる) ため、日時アーカイブと判断され、そういうテンプレートが適用されます。

上記のフォーラムでは、%year%, %monthnum%, %day%, %hour%, %minute%, %second% の全てを入れないと…という感じでしたが、

/%year%%monthnum%/%day%%post_id%.html

これでもいけました(大丈夫かどうかは定かでないですが…)

 

結局のところ、カスタム構造に

%year% %monthnum% %day%

の組み合わせだけはダメなようです。

 

他にも、

/%year%%monthnum%%day%/%hour%%minute%.html

こんな感じのカスタム構造もダメなようです。
(実際に試してみたら、たしかにダメでした)

カスタムパーマリンクにするのであれば、上記に%second%まで入れるか、%post_id%を入れてあげると良さそうな感じです(これが正しいかどうかは定かではありません)

 

同じ原因でトラブルになっているケースが多々あるようです。ご参考にして頂ければと思います。