B Memo

2014/07/02

Blogger:ウィジェットをトップページだけに表示させる方法


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