Bloggerテーマの基礎知識 - ページの種類を判断しよう

Bloggerにはトップページやラベル毎の一覧・検索結果・投稿・固定ページなどがあります。
テーマをカスタマイズする時、ページの種類によって表示を変えていケースは多いと思います。

このような時は条件分を使う事でページの種類毎の定義を行う事が出来ます。



データタグ「data:blog.pageType」

データタグ「data:blog.pageType」はページの種類によって以下の値が返ります。
  • "index"            ・・・ トップ/ラベル毎の一覧/検索結果の場合
  • "archive"         ・・・ アーカイブの場合
  • "item"             ・・・ 投稿ページの場合
  • "static_page"   ・・・ 固定ページの場合

トップ/ラベル毎の一覧/検索結果

  <b:if cond='data:blog.pageType == "index"'>
    ココはトップ/ラベル毎の一覧/検索結果の場合だけ実行される
  </b:if>

アーカイブ

  <b:if cond='data:blog.pageType == "archive"'>
    ココはアーカイブの場合だけ実行される
  </b:if>

投稿

  <b:if cond='data:blog.pageType == "item"'>
    ココは投稿の場合だけ実行される
  </b:if>

固定ページ

(メニューの「ページ」から作るやつ)
  <b:if cond='data:blog.pageType == "static_page"'>
    ココは固定ページの場合だけ実行される
  </b:if>



データタグ「data:view」

データタグ「data:view」には現在のビューに関するデータを取得できます。
以下の値はboolean型で取得できるものです。
  • data:view.isArchive           ・・・アーカイブ
  • data:view.isError              ・・・404エラーページ
  • data:view.isHomepage      ・・・トップページ
  • data:view.isLabelSearch    ・・・ラベルページ
  • data:view.isMultipleItems  ・・・検索・ラベル・ホームページなどの複数投稿があるページ
  • data:view.isMobile            ・・・モバイルページ(パラメータに&m=1がある)
  • data:view.isPage              ・・・固定ページ
  • data:view.isPost               ・・・投稿ページ
  • data:view.isPreview          ・・・プレビューモード
  • data:view.isSearch            ・・・検索ページ
  • data:view.isSingleItem      ・・・投稿や固定ページなどの単一ページ

  <b:if cond='data:view.isHomepage'>
    ココはトップの場合だけ実行される
  </b:if>




その他の判断方法

トップのみ

pageTypeではトップのみを判断する事は出来ないのでURLで判断します
  <b:if cond='data:blog.url == data:blog.homepageUrl'>
    ココはトップの場合だけ実行される
  </b:if>



コメント