WP のヒント:カテゴリーごとにテーマを適用する

wordlog.com » Different looks for different category pages
経由
Category Templates « WordPress Codex
より翻訳引用要約

WordPress 1.5 以降から採用されたテンプレート機能を使えば、かつて無いほど柔軟にサイトの見栄えを変更することが出来る。

特定のカテゴリーにはどのテンプレートファイルが使用されるのか

WordPress はカテゴリーを表示する際に、次のリストの上から順に最初に見つけたテンプレートを使用する。ここでは仮に表示するカテゴリーのID番号を6とする。

  1. category-6.php
  2. category.php
  3. archive.php
  4. index.php

すべてのカテゴリーページにメインのページとは違うテンプレートを適用するには、使用するテーマのディレクトリにcategory.phpというファイル名のファイルを作成する。

あるカテゴリーに他のカテゴリーや他のページとは違うテンプレートを適用するには、例えばカテゴリーのID番号が6とすると、category-6.phpというファイル名のファイルを作成する。

上のファイルはゼロから作る必要は無い。archive.phpindex.php 、もしくは page.phpをコピーして改造すればよい。

カテゴリー・ページの例

すべてのカテゴリー・ページに特定の同じ文を表示させる

使用するテーマのディレクトリにcategory.phpというファイル名のファイルを作成し、ループの上に次のコードを挿入する:

<div id="sticky-snip">
ここにすべてのカテゴリー・ページに表示させたい文を入れる
</div>

各カテゴリーごとに別の文を表示させる

例として、各カテゴリー・ページの上部に次のような文を表示させたいとする

  • 「チーズ」カテゴリー用の文として「これらの投稿はすべてチーズに関するものである」
  • 「短パン」カテゴリー用の文として「オレは長ズボンをはかない」
  • 上2つのカテゴリー以外のすべてのカテゴリー用として「以下は特定の話題を扱った投稿のリストである」

手順は:

  1. 上記のように category.php を作成し、ループの上に次を挿入する
    <div id="sticky-snip">
    以下は特定の話題を扱った投稿のリストである
    </div>
  2. 「チーズ」カテゴリーのカテゴリーID番号を調べる。ここではそのID番号を仮に6としよう。上記のようにcategory-6.phpを作りループの上に次を挿入する
    <div id="sticky-snip">
    これらの投稿はすべてチーズに関するものである
    </div>
  3. 「短パン」カテゴリーのカテゴリーID番号を調べる。ここではそのID番号を仮に19としよう。上記のようにcategory-19.phpを作りループの上に次を挿入する
    <div id="sticky-snip">
    オレは長ズボンをはかない
    </div>

全文ではなく抜粋のみを表示する

カテゴリー・ページのサイズを小さくするため、各投稿の文章を全部表示させる代わりにその抜粋を表示させることができる。WordPress 1.5 に含まれるデフォルト・テーマ内のarchive.phpを調べればどのようにするか分かるだろう。簡単に説明すると、上記のようにcategory.phpを作り、the_excerpt()を使用する。

<?php the_content(); ?>

の代わりに

<?php the_excerpt(); ?>

を使用する。

「WP のヒント:カテゴリーごとにテーマを適用する」への2件のフィードバック

コメントは停止中です。