診断士の経営視点とSEのシステム技術の両面からIT・システム開発・Web技術+アウトドア情報を提供しています

トップブログでつくるビジネスサイト無料ブログでここまでできるCMSでつくるビジネスサイトウェブ講座&SEOシステム開発個人情報保護Googleでお仕事信州撮っておき情報








スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[--------] スポンサー広告 | |

ズクダス撮影会 寒い! 

早朝5時半 松本駅で加藤先生と合流し 城山公園展望台にて夜明けを待つ
夜明け前 松本市南部と乗鞍岳

東の空 美ヶ原に陽が昇る
美ヶ原に陽がのぼる

西の北アルプスも赤く染まり始める
常念が赤く染まり始める

刻々と色は変わり空が白くなった
これが限界

スポンサーサイト

WordPressで複数のウィジェットを使う 

WordPress2.2以降ではサイドバーの要素を自由に配置変更できるウィジェット widget が標準装備となっている。WordPress標準のテンプレートでは2カラムレイアウトを採用しているため、ウィジェットも1個だけだが、複数のウィジェットを使って3カラムに対応させた。

ウィジェットをいくつ使うかは functions.php で指定する。WP2.1以前にはこのファイルがないので新規作成することになる。ただし、functions.php はログインやテーマエディタでも参照しているようなので(あるいはfunctions.phpでグローバルエリアの設定を書き変えている?)変更の際は十分注意すること。

2.2既定のfunctions.php
<?php
if ( function_exists('register_sidebar') )
register_sidebar(array(
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' =>'</li>',
'before_title' => '<h2>',
'after_title' => '</h2>',
));
?>

3カラムの左右に1個づつ、2個のウィジェットを使うには function.php のregister_sidebar を register_sidebars (複数!)にして、カッコの中にウィジェットの数を指定する。
<?php
if ( function_exists('register_sidebar') )
register_sidebars(2);
?>

これで管理画面の表示 ウィジェット画面に 2個のウィジェットが現れる。

sidebar.php をもう一つつくる。
標準の sidebar.php をベースに 左右のウィジェットを呼び出す sidebar1.php と sidebar2.php を作る。各phpの先頭に対応するウィジェットの番号を設定する。

<?php /* Widgetized sidebar, if you have the plugin installed. */
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar(2) ) : ?>
上は 2個目のウィジェットを対応させた例。

標準の sidebar.php を dynamic_sidebar(1) として、新規のサイドバーを dynamic_sidebar(2) としても良いが、 get_sidebar() では sidebar.php しか呼び出せない。
get_sidebar も使わないことにして sidebar1.php sidebar2.php を <?php include(TEMPLATEPATH.'/sidebar2.php'); ?>で呼んだ方が後々理解しやすいかもしれない。

ウィジェットはメニュのタイトルとして h2 を返している。expssのスタイルとしては、h1でページタイトル、h2でページ説明、h3で記事やメニュのタイトル という使い方をしているので、ウィジェットの h2 は具合が悪い。functions.php で ウィジェットタイトルとして h3 を返すように手を加える。

<?php
if ( function_exists('register_sidebar') ) {
register_sidebars(2);
register_sidebar(array(1,
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' =>'</li>',
'before_title' => '<h3>',
'after_title' => '</h3>',
));
register_sidebar(array(2,
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' =>'</li>',
'before_title' => '<h2>',
'after_title' => '</h2>',
));
}
?>

上のソースでは、ウィジェット1では タイトルに h3 、ウィジェット2では h2 を返すように設定した(詳細にWPのソースを検討したわけではないが、実験の結果、これでうまくいっている ということで記録することにした)。






トップブログでつくるビジネスサイト無料ブログでここまでできるCMSでつくるビジネスサイトウェブ講座&SEOシステム開発個人情報保護Googleでお仕事信州撮っておき情報
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。