Home » August 2006 » TagSupplementals Plugin 0.03公開

TagSupplementals Plugin 0.03公開

Movable Type 3.3以降でサポートされた「タグ」に便利機能を追加・拡張するTagSupplementals Plugin(TagSupplementals Plugin公開 - Ogawa::Memoranda)を約2か月ぶりにアップデートしました。

追加した機能は、以下の3つ。これでTagwireにはあった機能がほぼすべてポートできたはずです(性能の点はひとまずおいておくとして)。

  • encode_urlplusグローバルフィルタ。Tagwireにあったやつ。
  • 現在の「タグ」が最後に使われた時刻を表示するMTTagLastUpdated変数タグ。TagwireのMTTagDate相当。
  • MT-Searchで検索された「タグ」のリストを表示するMTSearchTagsコンテナタグ。TagwireにあったMTXSearchTagsのMT-Search版。

2番目のMTTagLastUpdated変数タグは、使用回数ではなく、使われた時刻が新しい「タグ」を強調表示するのに役に立つでしょう。今回、MTTagDateという名前にしなかったのは、「MTTagXX」という名前でSix Apartが機能追加する際に名前の衝突を起こしやすいからあまり自明なものを使うのも却って望ましくないだろう、という観測に基づいています。面倒ですが悪しからず。

3番目のMTSearchTagsコンテナタグは、単純ですが思いがけず便利に使えるかもしれない機能です。例えば、MTRelatedTagsコンテナタグと組み合わせて、「検索対象のタグ」に関連したタグをリストしたりすることができます。「検索結果」テンプレートに以下を追加するだけで実現できます。

<MTIfTagSearch>
<ul class="search-tags-list">
 <MTSearchTags>
 <li><a href="<$MTTagSearchLink$>" rel="tag"><$MTTagName$></a>
   <ul class="related-tags-list">
     <MTRelatedTags>
     <li><a href="<$MTTagSearchLink$>" rel="tag"><$MTTagName$></a></li>
     </MTRelatedTags>
   </ul>
 </li>
 </MTSearchTags>
</ul>
</MTIfTagSearch>

他にもこんな機能があったらなという希望があったらコメント・トラックバックでお知らせください。簡単に実現できる機能から順に気まぐれに更新していきます。

TagSupplementals Plugin.ja JP - Ogawa Code
TagSupplementals Plugin - Ogawa Code (English)

このエントリーのトラックバックURL: http://as-is.net/mt/mt-tb.cgi/423

Links referred to this entry

Comments (3)

  1. どうもお世話になっています。

    先日3.31にアップデートしまして、Tag関連も3.31に対応させました。
    TagCloudのページもある程度対応させたのですが、Tagwireで使えた <MTTags sort_by="count" lastn="1" sort_order="descend"> という表現ができないので、Tagの使用頻度によって文字の大きさを変えるということができなくなりました。

    Tagの最大使用数や最小使用数を取得できればと思います。
    いかがでしょうか、ご検討いただけると幸いです。

  2. タグの使用頻度は、MTTagRank変数タグがそのものずばりの機能ですから、それを使ってしまうのが簡単です。

    タグリストをソートしたり、一部を取り出すのはできませんが、ProNetではCompare Pluginを使った方法が紹介されていました。MTCollate Pluginと組み合わせてもできますね(この方法については機会があればエントリーを書きます)。また、将来的にはsort_order, sort_by, limitオプションをサポートする予定があるようです。

  3. 機能としてはあったのですね、お手数かけてすみません。
    アドバイスによりフォントの大きさを変えることができました。ありがとうございました。

Post a comment

Remember me?