ウィジェット領域を2つ以上つくる

WordPressウィジェット領域は、標準ではsidebar.php内の1カ所だけだが、index.phpやfooter.phpなど、その他のエリアにもウィジェット領域を持たせる。

■手順1:
テーマフォルダ/functions.php 3行目
register_sidebar(array(
これを
register_sidebars(3,array(
※数字は、ウィジェット領域の数
 
■手順2:
(例:index.phpのループの前と後に2つの領域を挿入)
テーマフォルダ/index.php 5行目 have_postsの前に以下を挿入
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar(2) ) : ?>
ここはウィジェット「2」※ウィジェットに何も登録されていない時にここの内容を表示
<?php endif; ?>
テーマフォルダ/index.php 40行目 endifの後に以下を挿入
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar(3) ) : ?>
ここはウィジェット「3」※ウィジェットに何も登録されていない時にここの内容を表示
<?php endif; ?>
WordPressウィジェット
※分かりやすくするためにdivで囲って色を付けてあります。
※サイドバーには、ウィジェットが登録されていない場合は従来どおりの標準的な内容が表示されます。

■手順3:ウィジェットを追加
管理画面>Design>Widget
にて、右側「Current Widget」のプルダウンメニューにウィジェット領域が3つ出来たことを確認し、それぞれの領域にウィジェットを設定する。左側に並んでいるウィジェットの「Add」ボタンを押すと右側に追加されるので、上下の順番をドラッグ&ドロップで変えて「Save Changes」をクリック。
WordPressウィジェット

■結果:
WordPressウィジェット
ループの前と後、右サイドバーそれぞれに別々のウィジェット領域が追加されました。標準のウィジェット類やアフィリエイトのバナー(テキストウィジェット)の他、PHPを実行可能なウィジェットも追加すれば、使い方次第でかなり凝った複雑なサイトでもすごく簡単にレイアウト変更ができるようになります、クライアント側でも。

■補足:
テーマフォルダ/functions.php 4〜7行目に、それぞれのウィジェットの前後に挿入されるタグ類を指定する「before_widget」「after_widget」「before_title」「after_title」という項目があります。標準ではそれぞれli、h2となっています。上記テストではそこはいじってないです。

※WordPress 2.5 RC2 でテストを行いました。なので管理画面などは英語表記です。エックスサーバーへのインストールもまったく問題なくスムーズに完了しました。前回投稿のerror_logの関係でインストールスクリプトが止まってしまうこともありませんでした。

↑ PageTop

この記事へのコメント
コメントを書く
name

mail

url

comment

認証コード: *


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/91525854

この記事へのトラックバック

WordPress カスタマイズについて
Excerpt: ホームページ作成用ソフトについてホームページ作成用ソフトについて今私は中学生なのですが、高額なソフトを買うお金がないので、フリーソ...
Weblog: WordPressとか
Tracked: 2008-04-08 07:42
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。