imasashi.net

[WordPress] トップページなのにif(is_home())が効かないと思いきや

wp

トップページだけサイドカラムの出し分けをしようとしてif(is_home())を試したんですが、全く反映されずに困っていたら原因が至極単純だった。

トップページの最新記事をquery_posts()を使って吐き出していたんですが、
これを使うと同じページでもそれ以降はarchiveと判定されるようです。

つまりサイトのソース構造がこうなっていると、

こう判定されるらしい。

なので、不必要になったらqueryをキャンセルすればオッケーぽいぞ、と。
ということで最新記事表示箇所の最後に

<?php wp_reset_query(); ?>

を挿入して無事解決しました。

めでたし。