TopMovable Typeカスタマイズカテゴリー > 2008年5月
2008年5月 9日

カテゴリーの階層別にデザインを切り替える for Movable Type 4

May 9,2008 12:03 AM
Tag:[, ]
Permalink

カテゴリーの階層別にデザインを切り替えるカスタマイズです。ポイントは「MTElseタグを使わない(使えない)」ということです。

参考記事は下記です。ありがとうございました。

アフィリエイトを続ける力 - MT条件分岐:親カテゴリーと子カテゴリーで表示を変える方法

以下に示すサブテンプレートは、ブログ記事リストへの設定を前提にしています。各サブテンプレートの一番外側のifタグは、ブログ記事リストでカテゴリーアーカイブと他のアーカイブを併用している場合を考慮したものです。

2階層の場合(パターン1)

<mt:if name="category_archive">
<MTHasParentCategory>
子カテゴリーのサブテンプレート
</MTHasParentCategory>
<MTHasNoParentCategory>
親カテゴリーのサブテンプレート
</MTHasNoParentCategory>
</mt:if>

2階層の場合(パターン2)

<mt:if name="category_archive">
<MTHasSubCategories>
  親カテゴリーのサブテンプレート
</MTHasSubCategories>
<MTHasNoSubCategories>
  子カテゴリーのサブテンプレート
</MTHasNoSubCategories>
</mt:if>

3階層の場合(パターン1)

<mt:if name="category_archive">
<MTHasSubCategories>
  <MTHasNoParentCategory>
  親カテゴリーのサブテンプレート
  </MTHasNoParentCategory>
  <MTHasParentCategory>
  子カテゴリーのサブテンプレート
  </MTHasParentCategory>
</MTHasSubCategories>
<MTHasNoSubCategories>
  孫カテゴリーのサブテンプレート
</MTHasNoSubCategories>
</mt:if>

3階層の場合(パターン2)

<mt:if name="category_archive">
<MTHasParentCategory>
  <MTHasSubCategories>
  子カテゴリーのサブテンプレート
  </MTHasSubCategories>
  <MTHasNoSubCategories>
  孫カテゴリーのサブテンプレート
  </MTHasNoSubCategories>
</MTHasParentCategory>
<MTHasNoParentCategory>
  親カテゴリーのサブテンプレート
</MTHasNoParentCategory>
</mt:if>

4階層の場合

<mt:if name="category_archive">
<MTHasSubCategories>
  <MTHasNoParentCategory>
  階層1カテゴリーのサブテンプレート
  </MTHasNoParentCategory>
  <MTHasParentCategory>
    <MTParentCategory>
      <MTHasParentCategory>
      階層3カテゴリーのサブテンプレート
      </MTHasParentCategory>
      <MTHasNoParentCategory>
      階層2カテゴリーのサブテンプレート
      </MTHasNoParentCategory>
    </MTParentCategory>
  </MTHasParentCategory>
</MTHasSubCategories>
<MTHasNoSubCategories>
  階層4カテゴリーのサブテンプレート
</MTHasNoSubCategories>
</mt:if>

次回はプラグインもしくは制御タグによる階層判定を行います。

Comments [4] | Trackbacks [0]
2008年5月 7日

カテゴリーリストの中に月別カテゴリーリストを表示する

May 7,2008 1:55 AM
Tag:[, , ]
Permalink

カテゴリーリストと、そのカテゴリーがもつ月別カテゴリーリストを同時に表示するカスタマイズです。

カテゴリーリストの中に月別カテゴリーリスト

カテゴリーリストはサブカテゴリーリストでも可能です。

カテゴリーリストの中に月別カテゴリーリスト

カテゴリーリストの表示件数を絞り、かつ表示月が少ない場合に有効です。また、月別カテゴリーが有効になっていない場合は月別カテゴリーリストを表示しません。

デフォルトテンプレート(ウィジェット)+カテゴリーリスト

<MTIfArchiveTypeEnabled archive_type="Category">
<div class="widget-archive widget-archive-category widget">
  <h3 class="widget-header">カテゴリ</h3>
  <div class="widget-content"><ul class="widget-list">
  <MTCategories>
    <MTIfNonZero tag="MTCategoryCount">
    <li class="widget-list-item"><a href="<$MTCategoryArchiveLink$>" title="<$MTCategoryDescription$>"><$MTCategoryLabel$></a>
      <MTIfArchiveTypeEnabled archive_type="Category-Monthly">
        <MTArchiveList archive_type="Category-Monthly">
          <MTArchiveListHeader>
      <ul class="widget-list">
          </MTArchiveListHeader>
        <li class="widget-list-item"><a href="<$MTArchiveLink$>"><$MTArchiveTitle regex_replace="/.*: /",""$></a> [<$MTArchiveCount$>]</li>
          <MTArchiveListFooter>
      </ul>
          </MTArchiveListFooter>
        </MTArchiveList>
      </MTIfArchiveTypeEnabled>
    <MTElse>
    <li class="widget-list-item"><$MTCategoryLabel$>
    </MTIfNonZero>
    </li>
  </MTCategories>
  </div>
</div>
</MTIfArchiveTypeEnabled>

デフォルトテンプレート(ウィジェット)+サブカテゴリーリスト

<MTIfArchiveTypeEnabled archive_type="Category">
<div class="widget-archive widget-archive-category widget">
  <h2 class="widget-header">カテゴリ</h2>
  <div class="widget-content">
  <MTTopLevelCategories>
    <MTSubCatIsFirst>
    <ul class="widget-list">
    </MTSubCatIsFirst>
    <MTIfNonZero tag="MTCategoryCount">
      <li class="widget-list-item"><a href="<$MTCategoryArchiveLink$>" title="<$MTCategoryDescription$>"><$MTCategoryLabel$></a>
      <MTIfArchiveTypeEnabled archive_type="Category-Monthly">
        <MTArchiveList archive_type="Category-Monthly">
          <MTArchiveListHeader>
        <ul class="widget-list">
          </MTArchiveListHeader>
          <li class="widget-list-item"><a href="<$MTArchiveLink$>"><$MTArchiveTitle$></a> [<$MTArchiveCount$>]</li>
          <MTArchiveListFooter>
        </ul>
          </MTArchiveListFooter>
        </MTArchiveList>
      </MTIfArchiveTypeEnabled>
    <MTElse>
      <li class="widget-list-item"><$MTCategoryLabel$>
    </MTIfNonZero>
    <MTSubCatsRecurse>
      </li>
    <MTSubCatIsLast>
    </ul>
    </MTSubCatIsLast>
  </MTTopLevelCategories>
  </div>
</div>
</MTIfArchiveTypeEnabled>

そのうち折りたためるようにします。

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
2020年
2019年
2018年
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