このブログで言えば「WEB作成」「 読書リスト」「日々のこと」と大きく3つのカテゴリがあり、それをさらに細かく分類しています。サイドバーにあるこのカテゴリをクリックすると、全タイトルがズラーっとリスト表示される方法の覚書です。
まずプラグイン「Custom Posts Per Page」をインストールします。
http://rephrase.net/miscellany/05/perpage.phpsにアクセスしてソースをコピー・ペースト。perpage.phpという名前(名前は任意)でwp-content/pluginsフォルダに保存してサーバーにアップします。
管理画面の「プラグイン・インストール済み」を開いて、プラグイン「Custom Posts Per Page」を”使用する”をクリックして有効化します。
プラグイン「Custom Posts Per Page」の変更できる箇所は以下の数字部分。$posts_per[‘category’] = 999;はカテゴリのタイトルが1ページに最大999個表示されるということ。デフォルトのまま使うことにしました。
- $posts_per[‘home’] = 5;
$posts_per[‘day’] = 10;
$posts_per[‘month’] = 10;
$posts_per[‘search’] = 10;
$posts_per[‘year’] = 999;
$posts_per[‘author’] = 999;
$posts_per[‘category’] = 999;
テンプレートのcategory.phpを作成します。
テーマによってはcategory.phpが存在しない場合がある、ということですが、私が使用しているテーマもcategory.phpがありませんでした。
category.phpが存在しない場合は、index.phpを利用して新規にcategory.phpを作成します。
category.phpを作成するには、index.phpを開いて、ループ部分を編集し,名前をcategory.phpに変更し、使用中のテーマのフォルダに保存します。
編集する部分は</header>の直後から <?php endif; ?>の直前まで。
そこを以下のように書き換えます。
<ul> <?php if ($posts) : foreach ($posts as $post) : start_wp(); ?> <li id="catpost-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title(); ?>"> <?php the_title(); ?></a> • • <?php the_date(''); ?></li> <?php endforeach; else: ?> </ul> <p><?php _e('Sorry, no posts matched your criteria.'); ?></p> <?php endif; ?>
編集したらサーバーにアップします。
と以上二つのファイルの作成だけで、カテゴリ別のリスト表示ができました。
表示ページのレイアウトはcssやcategory.phpを編集することで変更できます。
リストのタイトルと年月日の表示については、「WordPressの投稿日時を、好きなフォーマットで表示しよう!日本語&英語のコピペ用サンプル」が分かりやすくて、参考になりました。
上記までの設定でリスト表示は
•「泳いで帰れ」奥田 英朗 • • 2010年4月29日
となります。