2011.08.28

WordPress でカテゴリーごとにデザインを変える

wp-content/themes/使用中のテーマ/ にて、
category.php がある場合は、カテゴリーアーカイブ(?cat=ID)を選んだときにそれが使われ、なければ index.php が使われる。
category-ID.php がある場合、それはそのIDのカテゴリーアーカイブのときに使われる。

例えば、?cat=48 というカテゴリーを選ぶと、
1. category-48.php
2. category.php
3. index.php
の順番に探して、あったものを使う。
(ホントはもっとあるので、詳しくはこちら > テンプレート階層

1. のファイルを用意せずに、2.や3.のファイル内で if文を使って分岐させることもできる。

カテゴリーアーカイブを開いたとき、そのカテゴリーによって変える場合、
<? php
 if(is_category(’43’)) {
  ここに?cat=43のときの処理
 } else {
  その他のときの処理
 }
?>

1つの投稿(?p=)を開いたとき、その投稿が属するカテゴリーによって変える場合、
<? php
 if(in_category(’43’)) {
  ここに?cat=43のときの処理
 } else {
  その他のときの処理
 }
?>
is_categoryとin_categoryが違う。

で、処理の部分に、使うヘッダーファイルやサイドバーファイルを指定したりする。

通常のヘッダーファイルは header.php であり、
 <? php get_header(); ?>
で呼び出すが、
 <? php get_header(’48’); ?>
と書くと、header-48.php が呼び出される。
 <? php get_header(‘movie’); ?>
というように文字でもよく、この場合はheader-movie.php が呼び出される。

<?php include (TEMPLATEPATH . ‘/header-movie.php’); ?>
というようにも書けるので、これはheader-TAG.php の形じゃない場合に使えるかな。


2011.08.28, 01:41 / WordPress
WordPress でカテゴリーごとにデザインを変える はコメントを受け付けていません

Comments are closed.