FilterCategories - ikoaoki/mt-migration GitHub Wiki

FilterCategories

特定のカテゴリーを表示/非表示にするプラグイン。 MTFilterCategoriesタグは、MTCategoriesとMTArchiveListタグ内でのみ使え、MTArchiveType archice_type="Category"タグ内では使えないようです。

MT6でも動作は確認。

特定のカテゴリーを非表示にする

<MTCategories>
  <MTFilterCategories exclude="犬|猫">
    <a href="<MTCategoryArchiveLink>"><MTCategoryLabel></a>
  </MTFilterCategories>
</MTCategories>

MT6に書き換え

<MTCategories>
  <MTUnless tag="CategoryLabel" like="犬|猫">
    <a href="<MTCategoryArchiveLink>"><MTCategoryLabel></a><
  </MTUnless>
</MTCategories>

特定のカテゴリーを表示する

<MTCategories>
  <MTFilterCategories include="鳥">
    <a href="<MTCategoryArchiveLink>"><MTCategoryLabel></a>
  </MTFilterCategories>
</MTCategories>

MT6に書き換え

<MTCategories>
  <MTIf tag="CategoryLabel" like="犬|猫">
    <a href="<MTCategoryArchiveLink>"><MTCategoryLabel></a>
  </MTIf>
</MTCategories>

現在のカテゴリアーカイブではカテゴリ一覧に表示しない

<MTCategories>
  <MTFilterCategories exclude_archive_cat="1">
    <a href="<MTCategoryArchiveLink>"><MTCategoryLabel></a>
  </MTFilterCategories>
</MTCategories>

MT6に書き換え

<MTIfArchiveType archive_type="Category">

<MTSetVarBlock name="category"><MTCategoryLabel></MTSetVarBlock>

<MTCategories>
  <MTUnless tag="CategoryLabel" like="$category">
    <a href="<MTCategoryArchiveLink>"><MTCategoryLabel></a>
  </MTUnless>
</MTCategories>

</MTIfArchiveType>

その記事が指定したカテゴリーに所属していた場合、そのカテゴリーは表示させない

<MTFilteredEntryCategories exclude="犬">
  <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a>
</MTFilteredEntryCategories>

上記の場合であれば、この記事が、「鳥」「犬」というカテゴリに属していた場合、「鳥」というカテゴリ名しか表示されない。

MT6に書き換え

<MTEntryCategories>
  <MTUnless tag="CategoryLabel" like="犬">
    <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a>
  </MTUnless>
</MTEntryCategories>

その記事が指定したカテゴリーに所属していた場合のみ、そのカテゴリー名を表示させる

<MTFilteredEntryCategories include="犬">
  <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a>
</MTFilteredEntryCategories>

上記の場合であれば、この記事が、「鳥」「犬」というカテゴリに属していた場合、「犬」というカテゴリ名しか表示されない。

MT6に書き換え

<MTEntryCategories>
  <MTIf tag="CategoryLabel" like="犬">
    <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a>
  </MTIf>
</MTEntryCategories>

その記事のメインカテゴリー以外に所属しているカテゴリー名を表示させる

メインカテゴリー:<MTEntryCategory>
サブカテゴリー:<MTFilteredEntryCategories exclude_archive_cat="1" glue=","><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a></MTFilteredEntryCategories>

MT6に書き換え

MTには、メインカテゴリを扱う為のMTEntryPrimaryCategoryブロックタグ、メインカテゴリを含まないMTEntryAdditionalCategoriesブロックタグが現在はあるので、それを使える。

<MTIf tag="EntryCategory">
  <MTEntryPrimaryCategory>メインカテゴリー: <MTCategoryLabel></MTEntryPrimaryCategory>
  <MTEntryAdditionalCategories glue="," setvar="sub_cats"><MTCategoryLabel></MTEntryAdditionalCategories>
  <MTIf name="sub_cats">サブカテゴリー: <MTGetVar name="sub_cats"></MTIf>
</MTIf>

上記のように、setvarを使わないのであれば、下記のようにも書ける。

<MTIf tag="EntryCategory">
  <MTEntryPrimaryCategory>メインカテゴリー: <MTCategoryLabel></MTEntryPrimaryCategory>
  サブカテゴリー: <MTEntryAdditionalCategories glue=","><MTCategoryLabel></MTEntryAdditionalCategories>
</MTIf>

MTEntryPrimaryCategory、MTEntryAdditionalCategoriesを使わないならば、下記のようにも書ける。

<MTSetVarBlock name="main_category"><MTCategoryLabel></MTSetVarBlock>

メインカテゴリー:<MTCategoryLabel>
サブカテゴリー:
<MTEntryCategories>
  <MTUnless tag="CategoryLabel" like="$main_category">
    <a href="<MTCategoryArchiveLink>"><MTCategoryLabel></a>
  </MTUnless>
</MTEntryCategories>
⚠️ **GitHub.com Fallback** ⚠️