サブカテゴリから親カテゴリへのナビゲーションをするテンプレート

http://hxxk.jp/2004/11/21/0403

記事データ

投稿者

望月真琴

投稿日時

2004-11-21T04:03+09:00

タグ
概要

現在のカテゴリの親カテゴリや、トップレベルカテゴリへのナビゲーションを行うテンプレートの記述方法をまとめてみました。<!-- これはこの記事には関係のないコメントです。別の記事の実験用に挿入しています。 -->

リプライ

リプライはまだありません。

記事本文

上の階層にナビゲーションするリンク

サブカテゴリ系テンプレートタグのメモでメモしたテンプレートタグを元に、カテゴリアーカイブで使いそうなナビゲーションリストの例を作ってみました。

<ul>

  <MTHasNoParentCategory>
    <li>This category is top level category.</li>
  </MTHasNoParentCategory>
  
  <MTTopLevelParent>
    <li>
      <MTIfNonZero tag="MTCategoryCount">
        <a href="<$MTBlogArchiveURL$><MTCategoryLabel dirify="1">/">Top level category : <MTCategoryLabel dirify="1"></a>
        <MTElse>
        Top level category : <MTCategoryLabel dirify="1">
        </MTElse>
      </MTIfNonZero>
    </li>
  </MTTopLevelParent>
  
  <MTParentCategory>
    <li>
      <MTIfNonZero tag="MTCategoryCount">
        <a href="<$MTBlogArchiveURL$><$MTSubCategoryPath$>/">Parent category : <MTCategoryLabel dirify="1"></a>
        <MTElse>
        Parent category : <MTCategoryLabel dirify="1">
        </MTElse>
      </MTIfNonZero>
    </li>
  </MTParentCategory>

</ul>

これをカテゴリアーカイブのテンプレートに記述し、 サブカテゴリ系テンプレートタグのメモ - テスト環境で使った test01 〜 test03 カテゴリで確認してみると次のようになりました。

アーカイブ上で実際に展開される結果

test01 カテゴリ ( http://hxxk.jp/mt/test01/ )
<ul>
  <li>This category is top level category.</li>
</ul>
test02 カテゴリ ( http://hxxk.jp/mt/test01/test02/ )
<ul>
  <li><a href="http://hxxk.jp/mt/test01/">Top level category : test01</a></li>
  <li><a href="http://hxxk.jp/mt/test01/">Parent category : test01</a></li>
</ul>
test03 カテゴリ ( http://hxxk.jp/mt/test01/test02/test03/ )
<ul>
  <li><a href="http://hxxk.jp/mt/test01/">Top level category : test01</a></li>
  <li><a href="http://hxxk.jp/mt/test01/test02/">Parent category : test02</a></li>
</ul>

サブカテゴリの階層を 3 以上に深くする場合には結構役立ちそうです。

なお、階層が 2 の場合は

<MTParentCategory>
  <p>
    <MTIfNonZero tag="MTCategoryCount">
      <a href="<$MTBlogArchiveURL$><$MTSubCategoryPath$>/">Parent category : <MTCategoryLabel dirify="1"></a>
      <MTElse>
      Parent category : <MTCategoryLabel dirify="1">
      </MTElse>
    </MTIfNonZero>
  </p>
</MTParentCategory>

とすれば、サブカテゴリの場合のみ親カテゴリへのナビゲーションが現れることになります。

リプライ

リプライはまだ送られていないか、管理者の承認待ち状態です。

この記事に対するご意見やご質問、ご感想などありましたらこのフォームに簡潔に記入して下さい。 簡潔に記入できない場合や、関連記事にてご意見をお寄せいただく場合は、ご自身の weblog にて記事を書かれた上で あてにトラックバックとして送信してください。

記入フォーム

補足情報

著作、講演、制作実績など