WordPressでカテゴリーに分けて投稿していると、自動的にカテゴリーページが作成され、そのカテゴリーに属した記事の一覧が表示されます。

大変便利な機能ですが、コンテンツが増えてくると見にくく感じる事があると思います。

そこでカテゴリートップページの表示方法を変えて、オリジナルの記事一覧ページを作る方法をご紹介します。

テンプレートファイル

カテゴリー一覧を表示させるためのテンプレートは、一般的に category.php もしくは archive.php が使われているそうです。

賢威7では archive.php が用意され、使われています。

カテゴリーページを変更するには

テンプレートが入っているフォルダー内にある、category.php もしくは archive.php を変更する事で、カテゴリーページに表示される内容を変更する事が出来ます。

その際

  1. 全カテゴリーを同時に同じ様に変更したい
  2. 希望する1つ以上のカテゴリーを、それぞれ別々に変更したい

この2つが考えられるのではないかと思います。

賢威7での場合で解説します。

全カテゴリーを同時に同様に変更

1つ目の全カテゴリー共通で同時に変更を加えたい場合は、 archive.php を変更します。

例えば、archive.php の中のPHPで書かれた記述、

<?php // 投稿一覧
get_template_part( ‘cont’ ); ?>

この2行を削除するだけで、全てのカテゴリーページの記事一覧が表示されなくなります。

希望のカテゴリー毎に個々に変更

2つ目の個々に変更する場合は、archive.php の内容をそっくりコピーした category-×××.php というテンプレートファイルを、各カテゴリー毎に作成します。

テンプレートファイル内の作業内容は、1つ目の場合と同様です。

希望のカテゴリー毎にページを作成する方法

上記「カテゴリーページを変更するには」の2番目で少し触れた内容を詳しく解説します。

賢威7で、カテゴリー毎に表示内容を変更したい場合には、各カテゴリー毎に用意したテンプレートファイルを作成し、それぞれ修正します。

category-●●●.php ファイルは、 archive.php の内容をそっくりコピーしたものを、 archive.php と同じフォルダー内(子テーマの場合も同様)に作成します。

category-●●●.php の「●●●」は、次の文字または数字が入ります。

  1. カテゴリーのIDナンバーを入れる方法
  2. カテゴリーのスラッグを入れる方法

例えば、カテゴリーIDが 38 の場合は、category-38.php

例えば、カテゴリーのスラッグが test の場合は、category-test.php

の様になります。

カテゴリーIDの確認方法

カテゴリーIDの確認は、次の方法で行います。

ダッシュボード → 投稿 → カテゴリー を開き、ID番号を確認したいカテゴリーを編集状態にします。

そこで、管理画面のURLをチェックします。

・・・.php?taxonomy=category&tag_ID=38&post_type=post&・・・

この場合、この文字列中の ID=38 と書かれた38が、IDナンバーです。

テンプレートの修正場所

これまで、category.php もしくは archive.php を変更する事で、カテゴリートップページの内容を変更する方法を書きました。

最後に、テンプレートファイル内の修正場所をご案内します。

賢威7のテンプレートからの抜粋です。

<div class=”main-body”>
<div class=”main-body-in”><!–▼パン屑ナビ–>
<?php the_breadcrumbs(); ?>
<!–▲パン屑ナビ–><!–▼メインコンテンツ–>
<main>
<div class=”main-conts”>

    ・

    ・

 <この間に入れた内容が表示されます>

    ・

    ・

</div><!–main-conts–>
</main>
<!–▲メインコンテンツ–>

<?php get_sidebar(); ?>

</div>
</div>

<?php get_footer(); ?>

固定ページや投稿ページに書いた記事を取得する方法については、WordPressで特定の固定ページや投稿記事をカテゴリートップに表示する方法 の記事にまとめてありますので、そちらをご覧下さい。

安全を考えて、子テーマを用意する

これらの作業を行うとき、テンプレートの archive.php を直接書き換えても良いのですが、失敗するとブログが表示されなくなってしまいます。

子テーマを用意して、その中に書き換えた archive.php または category-×××.php を入れた方が安全でしょう。

万が一誤動作した場合でも、子テーマに転送したファイルを修正するか削除すれば、元に戻ります。

[関連記事]WordPress子テーマの作り方