2012年1月
データの移行に伴い、phpコードの文字化けが発生している箇所があります。
&lti や > のような文字化けが出ているコードはコピーしないでください。
現在、手直し中です。すみません。

記事ごと / カテゴリーごとに異なるテーマを表示するプラグイン

WordPressの場合、記事やカテゴリーによって、ほんの少しテンプレートを変えたい場合があります。

たとえば、「映画」の記事には、映画に特化した情報をサイドバーに載せたい。

「旅行記」には、ヘッダーにフォトを使いたい、といった場合です。

本来は『category.php』を編集すれば出来るようですが、何のことか分からない、もっと手軽に、記事ごと・カテゴリーごとにデザインを変えたいという場合は、こちらのプラグインがおすすめ。

Custom Post Template

当サイトの場合、レディース様専用コンテンツ『パソコン女子のお役立ち』とWP関連の記事について、サイドバーの表示と記事タイトル部分を若干変えています。

レディース向きにはこんな感じのバナーが入ります。サイドバーもWP関連の記事リストは非表示にしています。
女の子向けの記事タイトル部分



この場合、主に変更したいのは、sidebar.phpですが、プラグインのリクツとしては、次のようになります。

1.通常、header.php、sidebar.php、footer.phpは、テンプレート・タグを使ってsingle.phpから呼び出す。

テンプレート・タグを使った呼び出し

2. もし、header.php、sidebar.phpを変更したい場合は、新たにheader○○.php、sidebar○○.phpを作成し、それをインクルードする形でsingle○○.phpから呼び出すように設定する。

インクルードを使った呼び出し

つまり、今、使っているテーマ・テンプレートの中に、もうワンセット、新規作成したテーマファイルのグループを作成し、それを管理画面から記事ごとに設定するわけですね。

以下の画像は、通常のテーマ・テンプレートの中に、「Josi」という名前のテーマファイルのグループが存在することを示しています。

記事作成画面のダイアログ



以下が、「Josi」グループの作成手順です。

まず、新規に作成したシングル記事用のphpファイルを用意します。

多くの場合、single.php を改変します。ここでは「single_josi.php」と仮定します。

そして、ファイルに名前を付けます。

ファイル名の設定

次に、single_josi.phpから呼び出したいheader_josi.phpとheader_josi.phpを作成します。

それから呼び出したい場所に、上記のようなインクルードを記入すれば完成です。
通常、<?php get_sidebar(); ?>と置き換える形になります。



ブログに様々な種類のカテゴリーが存在する場合、ある一つのカテゴリーや記事について特化したアイテムを表示したい場合(映画の記事なら「新作のブログパーツなど」)、ちょっとsidebar.phpに手を加えるだけで、一つ一つのコンテンツを強調することができます。

あまりいろんなファイル・グループが存在すると、フォルダの中がファイルでごっちゃになるので管理が大変ですが(ビジターさんもデザインがコロコロ変わると混乱する)、ちょっとだけ何かを強調したい場合には便利な方法なので、興味があればトライしてください。

<注意>

基本的にウィジェットは一つのファイルにしか使えません。
もし、新しいグループにウィジェットを使わない場合、このコードは削除しておきましょう。


※ お使いのテーマによっては、必ずしもこういう書き方でない場合があります。
 
 

Ads

Leave a Reply

Trackback URL

QR Code Business Card