Home > PHP | wordpress > WordPressのカテゴリ毎にテーマを変更する方法

WordPressのカテゴリ毎にテーマを変更する方法

WordPressで親カテゴリとその子カテゴリに対し、共通のテーマを指定する際に下記の記述をするとできます。
カテゴリがtestの場合、

$array_is_category = explode(‘,’,get_category_parents($cat,false,’,',true));
if(is_category(‘test’) || array_search(‘test’,$array_is_category) === 0){
//testカテゴリのとき
}else{<br />
//その他のカテゴリのとき
}

仕組みとしては、子カテゴリの親カテゴリの情報をget_category_parentsで取得し、
explodeを使い、配列で$array_is_categoryに格納し、
array_searchで一番上のカテゴリに対し検索をかけます。

上の記述でいうと、
is_category(‘test’) でtestカテゴリか判断し、
array_search(‘test’,$array_is_category) === 0で一番上の親カテゴリがtestカテゴリか判断して表示させてます。

Comments:2

通りすがり 09-10-08 (木) 22:09

こんにちは。

とても役立つ情報ありがとうございました。

1点だけソースで確認をさせてください。

 array_search(’test’,$array_is_category)

部分は正確には「カテゴリ名」ではなく「スラッグ名」ですよね?

 get_category_parents($cat,false,’,’,true)

上記の最後にtrueをつけるとスラッグ名を返すという意味になります。

ですから、スラッグ名を探している事になると思いますので。

admin 09-10-09 (金) 1:23

通りすがりさん

ご指摘の通りですw

>>カテゴリがtestの場合、
ではなく
スラッグ名がtestの場合、

ですね。

どうもごっちゃにしてしまいました。
そういう私は、スラッグ名で設定してますしね。

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://webcross01.net/archives/433.html/trackback
Listed below are links to weblogs that reference
WordPressのカテゴリ毎にテーマを変更する方法 from WEB in the morning

Home > PHP | wordpress > WordPressのカテゴリ毎にテーマを変更する方法

The Associates
Search
Feeds
Meta
一番大好きなドラマー後藤マスヒロ氏のホムペ

Return to page top