人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

wordpress3.5に関して質問です。
テーマはtwentyelevenです。
カテゴリー別にsidebarの表示を変えたいと思い、category.phpの最後(sidebarを読み込む箇所)に
下記のスクリプトを追加しました。

ーーーーーーーーーーーーーーーーーーーーーー
<?php
if( in_category('abc') ) {get_sidebar('11');}
elseif( in_category('aaabbbccc') ) {get_sidebar('12');}
elseif( in_category('ghj') ) {get_sidebar('13');}
else {
get_sidebar();
}
?>

ーーーーーーーーーーーーーーーーーーーーーーーーーーーー

するとカテゴリー
aaabbbccc
のみ表示できません。
if文の記述が間違っているのでしょうか?

想定される原因と対応策を教えてください。


●質問者: mkusume
●カテゴリ:インターネット ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● rouge_2008
●180ポイント ベストアンサー

カテゴリー別に異なるsidebarを読み込む場合は、「in_category()」ではなく「is_category()」を使用します。

<?php
if( is_category('abc') ) {
get_sidebar('11');
} elseif( is_category('aaabbbccc') ) {
get_sidebar('12');
} elseif( is_category('ghj') ) {
get_sidebar('13');
} else {
get_sidebar();
}
?>


・条件分岐タグ/カテゴリーページ
http://wpdocs.sourceforge.jp/Conditional_Tags#.E3.82.AB.E3.83.86.E3.82.B4.E3.83.AA.E3.83.BC.E3.83.9A.E3.83.BC.E3.82.B8

カテゴリーページ
is_category()
あるカテゴリーのアーカイブページが表示されている場合。
is_category( '9' )
カテゴリーID 9のアーカイブページが表示されている場合。
is_category( 'Stinky Cheeses' )
"Stinky Cheeses"というカテゴリーのアーカイブページが表示されている場合。
is_category( 'blue-cheese' )
"blue-cheese"というカテゴリースラッグのアーカイブページが表示されている場合。
is_category( array( 9, 'blue-cheese', 'Stinky Cheeses' ) )
投稿のカテゴリーが term_ID 9、スラッグが "blue-cheese" の場合、カテゴリー名が "Stinky Cheeses" のいずれかにあてはまる場合、真を返す。



※「in_category()」は、投稿が指定したカテゴリーに含まれるかどうかを判定します。
「in_category('abc')」とした場合、その投稿がカテゴリー「abc」に属する場合に「true」になります。
質問文にあるようにカテゴリーページ「category.php」で使用した場合、「abc」カテゴリーのページにアクセスした際は、すべての投稿が「abc」カテゴリーに属しますので、最初の条件が反映されて正しく動作しているように見えると思いますが、別のカテゴリーページにアクセスした際に、最初の投稿が「abc」にも属している場合、最初の条件に一致して希望の動作と異なる表示になる場合もあります。


※「is_category()」は特定のカテゴリーの表示を変更する場合に「category.php」等に記述、「in_category()」は、特定の投稿に対して表示を変更したい場合にインデックスページ、あるはカテゴリーページなどのループ内、または個別投稿ページに記述して利用するといいです。

・テンプレートタグ/in category
http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/in_category


mkusumeさんのコメント
いつもご丁寧な回答ありがとうございます。 確認してみます。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ