トップページだけサイドカラムの出し分けをしようとしてif(is_home())を試したんですが、全く反映されずに困っていたら原因が至極単純だった。
トップページの最新記事をquery_posts()を使って吐き出していたんですが、
これを使うと同じページでもそれ以降はarchiveと判定されるようです。
つまりサイトのソース構造がこうなっていると、
こう判定されるらしい。
なので、不必要になったらqueryをキャンセルすればオッケーぽいぞ、と。
ということで最新記事表示箇所の最後に
<?php wp_reset_query(); ?>
を挿入して無事解決しました。
めでたし。