カテゴリー毎に記事のデザインを変える-WordPress

WordPressで記事を書く時に、カテゴリー毎に色を変えたい、配置を変えたいなど、違うデザインを使いたいということがあると思います。

早いうちに各テンプレートを用意しておけば、大きなデザイン変更も思いのままです。

カテゴリー毎のテンプレートを用意する

カテゴリー毎に記事のデザインを変えるには、そのカテゴリーのテンプレートを用意しなければならないので、それを用意します。

今回は「映画(スラッグ:movie)」「アニメ(スラッグ:anime)」「ドラマ(スラッグ:series)」というカテゴリーがあることにします。

まず、「single.php」を以下のようにリネームして保存。

single-movie.php」「single-anime.php」「single-series.php」「single-other.php」

全てをサーバーにアップします。

読み込むテンプレートを条件に合わせて分岐させる

記事を書くとまずsingle.phpというテンプレートを読み込むので、single.phpを開いてソースを以下のように書き換えます。

<?php
if ( in_category('movie) ) { //  カテゴリースラッグかカテゴリーIDを指定
      include(TEMPLATEPATH . '/single-movie.php');
} else if ( in_category('anime') ) { 
      include(TEMPLATEPATH . '/single-anime.php');
} else if ( in_category('series') ) { 
      include(TEMPLATEPATH . '/single-series.php');
} else {
      include(TEMPLATEPATH . '/single-other.php');
}
?>

映画(スラッグ:movie)のカテゴリーの投稿記事は「single-movie.php」のテンプレート。

アニメ(スラッグ:anime)のカテゴリーの投稿記事は「single-anime.php」のテンプレート。

ドラマ(スラッグ:series)のカテゴリーの投稿記事は「single-series.php」のテンプレート。

また、その他のカテゴリーの投稿記事は「single-other.php」が適用されます。

これで準備は整いました。

カテゴリー毎にデザインを変える

あとは各テンプレートにクラス名を追記して、新しいスタイルシート(css)を作るか、今使っているスタイルシートに適用したいスタイルを追加すればOKです。

やってみると意外とシンプルですね。後々カテゴリー毎に大きくデザインを変えたくなっても、既にテンプレートが用意してあれば、スタイルシートを変えるだけでいいので作業が楽になります。