カテゴリ毎にレイアウトを変える・・WordPress

投稿者: | 2010/08/12

WordPressを使用して会社のホームページを作成しているとブログには日付を入れて、他の記事には日付なしにする事がよくあります。このような場合はテンプレートを使って振り分ければ簡単です。

投稿記事
テーマ内の投稿用phpファイル(single.php)をコピーして名前を付けて保存。
ブログ用なら(blog_single.php)、その他は(other_single.php)など。
※この時にother_single.php内の日付表示は削除しておくこと。

<div class="post_date">
	<?php the_time('Y/m/d') ?>
</div>

2つのテンプレートを作成後、「single.php」ファイルに以下のコードを記述して保存。

<?php
 $post = $wp_query->post;
 if ( in_category('7') ) {
 include(TEMPLATEPATH . '/blog_single.php');
 } else {
 include(TEMPLATEPATH . '/other_single.php');
 }
?>

ブログの投稿:blog_single.php(カテゴリID7)、その他の記事:other_single.php、
このようにテンプレートで(日付入り・なし)に振り分けられます。
アーカイブ
日付アーカイブには、archive.phpファイルをコピーしてカテゴリのブログ用に(category-7.php)を作成。
WordPress Codex Category Templates (参照)
ブログ以外のカテゴリを日付なしにするには、archive.php内の日付部分を削除して保存。
これでアーカイブでカテゴリのブログには日付入り、ブログ以外の記事の日付なしに表示されます。
※アーカイブで同日の投稿で日付が表示されない場合、以下のように記述。各記事に日付が表示されます。

<? the_time(Y年n月j日);?>

関連記事

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)