以下は、http://automattic.com/code/widgets/themes/ こちらからの転載。
現時点で「良」とされているサイドバーのマークアップは、
<ul id=”sidebar”>
<li id=”about”>
<h2>About</h2>
<p>This is my blog.</p>
</li>
<li id=”links”>
<h2>Links</h2>
<ul>
<li><a href=”http://example.com”>Example</a></li>
</ul>
</li>
</ul>
なのだそうだ。
そして、これをウィジェットに反映させるためには
<ul id=”sidebar”>
<?php if ( !function_exists(‘dynamic_sidebar’) || !dynamic_sidebar() ) : ?>
<li id=”about”>
<h2>About</h2>
<p>This is my blog.</p>
</li>
<li id=”links”>
<h2>Links</h2>
<ul>
<li><a href=”http://example.com”>Example</a></li>
</ul>
</li>
<?php endif; ?>
</ul>
青文字の部分を書き足す。
そして、functions.php ファイルへの記載は
<?php
if ( function_exists(‘register_sidebar’) )
register_sidebar();
?>
そして、サイドバーがリスト表示タイプでは無い時は以下のようにする
<div id=”sidebar”>
<div class=”title”>About</div>
<p>This is my blog.</p>
<div class=”title”>Links</div>
<ul>
<li><a href=”http://example.com”>Example</a></li>
</ul>
これがウィジェットに反映するようにするには、
<div id=”sidebar”>
<?php if ( !function_exists(‘dynamic_sidebar’)
|| !dynamic_sidebar() ) : ?>
<div class=”title”>About</div>
<p>This is my blog.</p>
<div class=”title”>Links</div>
<ul>
<li><a href=”http://example.com”>Example</a></li>
</ul>
<?php endif; ?>
</div>
そして、functions.php ファイルには以下のように記載する。
<?php
if ( function_exists(‘register_sidebar’) )
register_sidebar(array(
‘before_widget’ => ”,
‘after_widget’ => ”,
‘before_title’ => ‘<div class=”title”>’,
‘after_title’ => ‘</div>’,
));
?>
さらに、もっとフレキシブルにしたい時には、
‘before_widget’ => ‘<div id=”%1$s” class=”widget %2$s”>’,
‘after_widget’ => ‘</div>’,
と記載すると良い、と書いてある。
ちなみに、%1$s とか %2$s などは以下の意味だそう。(参照サイト:http://ecn.blog4.fc2.com/blog-entry-5.html)
%1$s 投稿者名 %2$s 日付 2008-02-08 %3$s 時刻 11:33:42+0900 %4$s 日付 管理画面>オプション>一般設定>デフォルトの日付フォーマットで設定したフォーマット %5$s 時刻 管理画面>オプション>一般設定>デフォルトの時刻フォーマットで設定したフォーマット %6$s 登録されたカテゴリー名&リンク %7$s 登録されたタグ名&リンク
ちなみに「$」は変数名にする為のPHPの定義
name ← 「$」がないとただの文字列
$name ← 「$」が付くと変数になる
「%」は多分色々な使われ方があって、
■余りを表示させる算術演算子としての「%」
【例】10%3 10を3で割った余りを求めている剰余算
他に、
■sprintf (文字列書式フォーマット)
【例】
$a = sprintf(‘a = %06d b = %04d’, 10, 20);** $a には、’a = 000010 b = 0020′ がセットされます。
** 書式記号は C 言語と同じみたいです。%b 2進
%c 文字
%d 整数
%u 符号なし整数
%f 浮動小数点
%o 8進
%s 文字列
%x 16進小文字
%X 16進大文字
(参照:http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/php_k05.htm)
という事。
それで、%1$s などが一体どんな規則性でこうなっているか、は今ひとつ分かっていない。今後の課題。