2012年2月19日

Movable Typeでパンくずリストを作る

February 19,2012 3:33 AM
Tag:[, ]
Permalink

Movable Typeでパンくずリストを作る方法です。当ブログでオーソドックなパンくずリストの作り方の記事がまだなかったので、本エントリーでまとめることにします。

1.カテゴリアーカイブページにパンくずリストを表示

カテゴリアーカイブページに次のようなパンくずリストを表示します。

カテゴリアーカイブページのパンくずリスト

スクリーンショットのように表示するには、カテゴリアーカイブページ用のテンプレート(「カテゴリ別ブログ記事リスト」テンプレートなど)に以下のサブテンプレートをはりつけます。

<div class="breadcrumb">
  <a href="<$mt:BlogURL$>">TOP</a> &raquo;
<mt:ParentCategories glue=" &raquo; ">
  <a href="<$mt:CategoryArchiveLink$>"><$mt:CategoryLabel$></a>
</mt:ParentCategories>
</div>

「TOP »」はサブテンプレートに直接記述しています。

カテゴリはMTParentCategoriesタグを使って、親カテゴリから現在のカテゴリまでを順番に表示します。カテゴリページへのリンクはMTCategoryArchiveLinkタグを利用します。

MTParentCategoriesタグにglueモディファイを利用すれば、カテゴリを並べて表示する際の区切り文字をいれてくれます。ここでは区切り文字に「»」の実体参照である「&raquo;」を設定しています。

現在のカテゴリにカテゴリページへのリンクを設定したくない場合は、MTParentCategoriesタグで処理しているカテゴリとそのページのカテゴリを比較して、等しい場合のみMTCategoryArchiveLinkタグを適用しないようにします。

<div class="breadcrumb">
<$mt:CategoryID setvar="cat_id"$>
  <a href="<$mt:BlogURL$>">TOP</a> &raquo;
<mt:ParentCategories glue=" &raquo; ">
  <$mt:CategoryID setvar="current_cat_id"$>
  <mt:if name="current_cat_id" eq="$cat_id">
    <$mt:CategoryLabel$>
  <mt:else>
    <a href="<$mt:CategoryArchiveLink$>">
<$mt:CategoryLabel$></a>
  </mt:if>
</mt:ParentCategories>
</div>

これで末端のカテゴリにリンクが表示されなくなります。

カテゴリアーカイブページのパンくずリスト

2.ブログ記事ページにパンくずリストを表示

ブログ記事ページに次のようなパンくずリストを表示します。

カテゴリに属しているブログ記事のパンくずリスト

スクリーンショットのように表示するには、ブログ記事ページ用のテンプレート(「ブログ記事」テンプレートなど)に以下のサブテンプレートをはりつけます。

<div class="breadcrumb">
  <a href="<$mt:BlogURL$>">TOP</a> &raquo;
<mt:ParentCategories glue=" &raquo; ">
  <a href="<$mt:CategoryArchiveLink$>"><$mt:CategoryLabel$></a>
</mt:ParentCategories>
<mt:if tag="EntryCategory"> &raquo; </mt:if><$mt:EntryTitle$>
</div>

構造は1項のサブテンプレートとほぼ同じです。異なるのはカテゴリを表示したあとに、ブログ記事を表示するようにしています(赤色部分)。

カテゴリに属さないブログ記事があることも考慮し、MTIfタグでMTEntryCategoryタグを判定し、カテゴリが設定されている場合のみ、ブログ記事タイトルの直前に「&raquo;」を表示するようにしています。

この制御を行うことで、カテゴリに属していないブログ記事のパンくずリストは次のように表示します。

カテゴリに属していないブログ記事のパンくずリスト

3.ウェブページのパンくずリスト

ウェブページのパンくずリストについては「Movable Typeのパンくずリストでフォルダの代わりにウェブページを表示する」を参照してください。

Comments [0] | Trackbacks [0]
Now loading...
ギターに入った猫
掲載広告募集
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

このブログをメールで購読する by:FeedBurner


AMN
Categories
Monthly Archives
2017年
2016年
2015年
2014年
2013年
2012年
2011年
2010年
2009年
2008年
2007年
2006年
2005年
2004年
2003年
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
Powered by
Movable Type 6.0.3