カテゴリ IF 命令プラグイン - MTIfCategory

Drk7jpトップ > MT >

Movable Type に関連する情報やプラグインを公開。お天気情報プラグインが一番人気

カテゴリ IF 命令プラグイン - MTIfCategory

前日紹介した「Movable Type の正規表現プラグイン」は、MTタグで得られる結果を正規表現で文字列比較できる非常に強力なプラグインですが、それだけでは実現できない機能があります。それは、MTタグで得られる結果どうしを比較する機能です。

もっと具体的に例を挙げるとすれば、このサイトのナビゲーションバーのように、カテゴリーアーカイブにおいて、今該当するカテゴリーだけを見栄えを変化させたり、個別記事が属するカテゴリーに応じて、ナビゲーションバーの見栄えを変化させたりすることです。

ということで、MT の内部機能的に話すとすれば、<$MTCategoryLabel$> と <$MTArchiveCategory$> を比較したり、<$MTCategoryLabel$> と <$MTEntryCategory$> を比較することを実現するためのプラグインを公開します。
 
スクリプトはこちら(MTIfCategory.pl) 


<動作環境>
MovableTypeをご使用の環境ならどれでも。
 
<pluginの設置方法>
(1)他のPlugin同様に、MovableTypeのpluginディレクトリへ IfCategory.pl をFTPして下さい。
  ファイルの文字コードは変更せず、このまま UP してください。ここポイント!!
 
以上で、MovableTypeで以下の4つのコンテナ・タグが使用可能になります。
 
<MTIfCategory コンテナ・タグ>
  • <MTIfCat_eq_Arc> 〜 </MTIfCat_eq_Arc>
    <$MTCategoryLabel$> と <$MTArchiveCategory$> が一致した場合、タグ範囲内の内容が有効になります。
    主に、カテゴリーアーカイブにてナビゲーションバーの見栄えを変更する際に使用します。
     
  • <MTNotIfCat_eq_Arc> 〜 </MTNotIfCat_eq_Arc>
    上記のNot判定で使用します。
     
  • <MTIfCat_eq_Ent> 〜 </IfCat_eq_Ent>
    <$MTCategoryLabel$> と <$MTEntryCategory$> が一致した場合、タグ範囲内の内容が有効になります。
    主に、個別エントリーにてナビゲーションバーの見栄えを変更する際に使用します。
     
  • <MTNotIfCat_eq_Ent> 〜 </MTNotIfCat_eq_Ent>
    上記のNot判定で使用します。

<使用例(カテゴリー・アーカイブで各カテゴリ部分だけ強調表示する)>
<MTCategories show_empty="1">
<MTIfCat_eq_Arc><B><$MTCategoryLabel$></B></MTIfCat_eq_Arc>
<MTNotIfCat_eq_Arc><$MTCategoryLabel$></MTNotIfCat_eq_Arc>
</MTCategories>

 
<使用例(個別エントリーで属するカテゴリ部分だけ強調表示する)>
<MTCategories show_empty="1">
<MTIfCat_eq_Ent><B><$MTCategoryLabel$></B></MTIfCat_eq_Ent>
<MTNotIfCat_eq_Ent><$MTCategoryLabel$></MTNotIfCat_eq_Ent>
</MTCategories>


Posted by drk at 2005年05月20日 23:47 | Comments (6) | はてなブックマークに追加 |
このエントリーに関連するキーワードとエントリ一覧

以下の書籍が参考になります

コメントをお寄せください










本件に対するコメント(6件)
>Nakachi さん

実のところをもうしまして MT4 では検証したことがありません。下のコメントでも書きましたが、まだ MT4 対応を実施していない状況です。
申し訳ありません。

Posted by drk at 2009年07月30日 09:49
MT4.261で使用させて頂いてます。
プラグインは動作しているのですが、ツリー型カテゴリで実現しようかと思い、
<mt:Categories>を<mt:TopLevelCategories>に変えた所動作しなくなりました。

これは仕様なのでしょうか?
また、<mt:TopLevelCategories>にて対応させる事は可能でしょうか?

Posted by Nakachi at 2009年07月24日 15:20
jonson さん> MT4 ではどうやらプラグインの仕様が変更になっているようですね。MT3 以前で通用した MT2 時代の書き方ではダメみたいです。
時間ができたら MT4 対応をしてみます。

と言うわけで、申し訳ありませんがご指摘の通り現状は MT4 非対応となります。

Posted by drk at 2007年09月24日 14:12
MT4で使用したところ、うまくプラグインが使用できなかったのですが、
MT4には非対応なのでしょうか?私の使用方法が間違っているのであれば申し訳ありません。
Posted by jonson at 2007年09月21日 11:10
akyaoさん>おっしゃるとおりですね。修正しました。ご指摘有り難うございます。
Posted by drk at 2007年02月27日 22:37
サンプルの終了タグの名前間違ってませんか?
>

開始タグ
>MTIfNotCat_eq_Arc
終了タグ
>MTNotIfCat_eq_Arc

Posted by akyao at 2007年02月27日 15:46

[△top]

サイト内検索


スポンサードリンク


このブログ中の人に連絡を取りたい

ブログでアフィリエイト!支援ツール

楽天の人気商品をピックアップ

最近の記事

Archives(月別)