wordpress 特定のカテゴリー以下の記事テンプレートを変える

特定のカテゴリー以下の記事だけ他のsingle.phpを使いたい。出来るんですねこれ。

やり方は簡単なのですが この設定だとカテゴリーの子カテゴリー以下の記事には指定されません。
記事に対する親カテゴリーで指定しましょう。

function.phpに記述する

add_filter('single_template', create_function('$t', 'foreach( (array) get_the_category() as $cat ) { if ( file_exists(TEMPLATEPATH . "/single-{$cat->term_id}.php") ) return TEMPLATEPATH . "/single-{$cat->term_id}.php"; } return $t;' ));

single-カテゴリー名.phpを作る

function.phpにはカテゴリーIDを含んだsingle.phpを呼び出すように指定しています。 なのでカテゴリーのIDが10ならばsingle-10.phpというファイルを作りテーマフォルダ内にアップしてください。

あとはカテゴリーに指定した single-カテゴリーID.php内を編集するだけです。
特定のカテゴリー以下の記事だけ 違うsidebarを表示したり コメントを外すとか何でも出来ますね。