プラグイン「custom-post-template」を使うと、固定ページでテンプレートを指定するように、投稿記事毎にテンプレートを指定できたりするんだけども、よくあるのは、「カテゴリーでsingle.phpを変えたい」というパターン。

上のプラグインの場合だと、記事投稿の度にテンプレートを選ばないといけないので面倒。

で、よくある

[php]
<?php
$post = $wp_query->post;
if ( in_category(‘1′) ) {
include(TEMPLATEPATH.’/single-1.php’);
} elseif ( in_category(‘2′) ) {
include(TEMPLATEPATH.’/single2.php’);
} else {
include(TEMPLATEPATH.’/single-other.php’);
}
?>
[/php]

カテゴリーid=1の時はsingle1.php、・・・他はsingle-other.phpってやつね。

子テーマを使っている場合は、このままコピペじゃ動かない。

というのは、「TEMPLATEPATH」は親テーマのパスになる。

なので、子テーマを使っていて、single.phpを切り替えたい時は、

「TEMPLATEPATH」→「STYLESHEETPATH」

にしておこう。

おまけ、

カテゴリーを複数指定するときは↓

if(in_category(array(‘1′,’2′,’3’)))