asamuzaK.jp

パンくずリストを構造化

MTのタグについて右も左もよくわからない中、いつもリファレンスとして重宝させていただいているhxxk.jpさん。 アーカイブテンプレートとパンくずリストサブカテゴリとパンくずリストサブカテゴリとパンくずリスト (2)あたりを参考にさせてもらいつつ実施してみたパンくずリストの自己流テンプレート。

hxxk.jpさんの例では、ol要素でのパンくずリストの出力は、

  1. ホーム
  2. カテゴリ
  3. サブカテゴリ
  4. 個別記事

これでもう満貫^h^h満願成就なわけだが、でも、せっかくだからもう一飜のっけて、

  1. ホーム
    1. カテゴリ
      1. サブカテゴリ
        1. 個別記事

という形に構造化できないものかなぁ、と。 li要素は1つしか出現しないので、どこまでも1.が表示されるのがちょっとアレではあるが^^; つーか、どのみち六飜も七飜も同じ満貫だしねぇ(意味不明^^;)

いずれにせよ、以下が自作してみたテンプレート。

日付アーカイブのパンくずリスト

<ol id="hierarchical-menu">
<li><a href="<$MTBlogURL$>">Home</a>
    <ol>
<MTHasParentCategory>
<MTParentCategories glue="">
<MTIfNonZero tag="MTCategoryCount">
    <li><a href="<$MTCategoryArchiveLink$>"><MTCategoryLabel></a>
        <ol>
<MTElse>
    <li><MTCategoryLabel>
        <ol>
</MTElse>
</MTIfNonZero>
</MTParentCategories>
</MTHasParentCategory>
            <li><$MTArchiveTitle$></li>
<MTHasParentCategory>
<MTParentCategories glue="">
        </ol>
    </li>
</MTParentCategories>
</MTHasParentCategory>
        </ol>
    </li>
</ol>

なんかものすごい勘違いをしているような気がしてきたのでテンプレート再考中^^;

そして、できあがった結果はこちら。

日付アーカイブ(月別)

<ol id="hierarchical-menu">
<li><a href="<$MTBlogURL$>">Home</a>
    <ol>
        <li><$MTArchiveTitle$></li>
    </ol>
</li>
</ol>

日付アーカイブ(日別・週別)

<ol id="hierarchical-menu">
<li><a href="<$MTBlogURL$>">Home</a>
    <ol>
        <li><a href="../"><$MTArchiveDate format="%Y/%B"$></a>
            <ol>
                <li><$MTArchiveTitle$></li>
            </ol>
        </li>
    </ol>
</li>
</ol>

日別・週別は自分の所では作っていないので未検証です(ぉ

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

<ol id="hierarchical-menu">
<li><a href="<$MTBlogURL$>">Home</a>
    <ol>
<MTHasParentCategory>
<MTParentCategories glue="" exclude_current="1">
<MTIfNonZero tag="MTCategoryCount">
        <li><a href="<$MTCategoryArchiveLink$>"><MTCategoryLabel></a>
            <ol>
<MTElse>
        <li><MTCategoryLabel>
            <ol>
</MTElse>
</MTIfNonZero>
</MTParentCategories>
</MTHasParentCategory>
                <li><$MTArchiveTitle$></li>
<MTHasParentCategory>
<MTParentCategories glue="" exclude_current="1">
            </ol>
        </li>
</MTParentCategories>
</MTHasParentCategory>
    </ol>
</li>
</ol>

ん?^^; 実は日付アーカイブと同じような... 今、気が付いた(爆

エントリアーカイブのパンくずリスト

category/sub_category/の形式。

<ol id="hierarchical-menu">
    <li><a href="<$MTBlogURL$>">Home</a>
    <ol>
<MTHasParentCategory>
<MTParentCategories glue="">
<MTIfNonZero tag="MTCategoryCount">
    <li><a href="<$MTCategoryArchiveLink$>"><MTCategoryLabel></a>
        <ol>
<MTElse>
    <li><MTCategoryLabel>
        <ol>
</MTElse>
</MTIfNonZero>
</MTParentCategories>
</MTHasParentCategory>
<MTHasNoParentCategory>
<MTIfNonEmpty tag="MTEntryCategory">
<MTTopLevelParent>
    <li><a href="<$MTCategoryArchiveLink$>"><MTCategoryLabel></a>
        <ol>
</MTTopLevelParent>
</MTIfNonEmpty>
</MTHasNoParentCategory>
        <li><$MTEntryTitle$></li>
<MTHasNoParentCategory>
<MTIfNonEmpty tag="MTEntryCategory">
<MTTopLevelParent>
        </ol>
    </li>
</MTTopLevelParent>
</MTIfNonEmpty>
</MTHasNoParentCategory>
<MTHasParentCategory>
<MTParentCategories glue="">
        </ol>
    </li>
</MTParentCategories>
</MTHasParentCategory>
        </ol>
    </li>
</ol>

カテゴリーが選択されてない記事にもいちおう対応。 カテゴリー未選択の場合のテスト

"パンくずリストを構造化"へのTwitter上でのコメントやRT

ツイートを取得できませんでした。Topsyで確認する

"パンくずリストを構造化"へのコメント

コメントは寄せられていません。

コメント投稿フォーム

名前、メールアドレス、URIはいずれも任意です。 コメントは承認後に公開されます(承認されない場合もあります)。 なお、メールアドレスは公開されません。

情報の保存

"パンくずリストを構造化"へのトラックバック

1 件のトラックバックが寄せられています。

パンくずリストを構造化・再考 [asamuzaK.jp]
Movable Typeの日付アーカイブにおけるパンくずリストを再考する試み

この記事にトラックバックするには、http://asamuzak.jp/cgi-bin/mt/mt-trackbacks-mmxii.cgi/55までpingを送信してください。 トラックバック送信元にこの記事への言及(リンク)がない場合は受け付けない設定にしています。