Bloggerでウィジェットをトップページにだけ表示させる方法のメモ。個別ページやタグページ、アーカイブでは表示されないので、例えば更新履歴などのお知らせを載せたりするのに使えます。
b:sectionを囲む
まずトップにだけ表示したいガジェットのコードを探します。そのガジェットの<b:section>以下を下記コードで囲みます。<b:if cond='data:blog.url == data:blog.homepageUrl'> <b:section>・・・・</b:section> </b:if>
1行目のコードが『トップページだけに表示しなさい』という意味らしいです、ふむ。しかしただ囲むだけでは下記エラーがでます。
More than one section was found with id: *****. Section IDs should be unique.
ID(の名前)は一個にしてくだいよ!ということかしら?ってことでb:sectionのIDを適当に変えます。
<b:if cond='data:blog.url == data:blog.homepageUrl'> <b:section class='*****' id='*****toponly' .....> <b:widget id='*****' locked='false' title='ガジェットタイトル' type='*****'> <b:includable id='*****'> <b:if cond='data:title'><h2><data:title/></h2></b:if> <div class='widget-content'> <data:content/> <b:include name='quickedit'/> </div> </b:includable> </b:widget> </b:section> </b:if>2行目のid='*****toponly'の部分ですね、初期IDの後ろにtoponlyを付けて別のIDに変えました。別にtoponlyじゃなくても01でも02でもなんでもいいです。
これでトップページだけの表示ができます。
ちなみに<b:widget>を囲んでもできますが、変な余白が出てしまいました。今回は自分で解決できたぞ!という喜びの後、よく調べたらちゃんとやり方書いてあるブログ見つけました…最初に見つけていれば…。そちらの方が詳しいので下記リンクからどうぞ。
http://dhblogs10.blogspot.jp/2011/02/tips_21.html