Archive for category Movable Type

Movable Typeのカテゴリ並び替え・任意カテゴリの表示と非表示についてメモ

Movable Typeのカテゴリまわりの調整で久しぶりにはまりました。が突破。ちょっと手こずったのでメモ。

Movable Type(今回はVer.4.23)でカテゴリの順番を自由に並び替えるのに使用するプラグインはSortCatFld。 プラグインの導入・設定方法は割愛。SortCatFldを使用して任意の並び順にしたカテゴリの一覧を表示するには下のような感じ(であってるかな?)。sort_methodを指定する。カテゴリの最初と最後辺りを調整するのにMTSubCatIsFirstとMTSubCatIsLastを使用。これが正しいかは微妙なのだけど、他の方法でうまくいかない部分があったのでこれで。

<MTTopLevelCategories sort_method=”SortCatFld::Sort”>
<MTSubCatIsFirst>
<ul>
</MTSubCatIsFirst>
<li><a href=”<$MTCategoryArchiveLink$>”><$MTCategoryLabel$></a></li>
<MTSubCatIsLast>
</ul>
</MTSubCatIsLast>
</MTTopLevelCategories>

この一覧の中から任意のカテゴリだけをピックアップして表示したり非表示にしたりするプラグインはFilterCategories。導入・設定方法は特に難しくないので割愛。例えば「会社案内」カテゴリだけ非表示にしたい場合は(※注:下のソースだとうまく機能しません。更に下で後述します)

<MTTopLevelCategories sort_method=”SortCatFld::Sort”>
<MTFilterCategories exclude=”会社案内”>
<MTSubCatIsFirst>
<ul>
</MTSubCatIsFirst>
<li><a href=”<$MTCategoryArchiveLink$>”><$MTCategoryLabel$></a></li>
<MTSubCatIsLast>
</ul>
</MTSubCatIsLast>
</MTFilterCategories>
</MTTopLevelCategories>

と、MTFilterCategoriesタグのexclude属性で、非表示にするカテゴリを指定する。逆に表示したいカテゴリを指定するならinclude属性にする。カテゴリを複数指定したい場合は

<MTFilterCategories exclude=”cat1 | cat2 | cat3″>

という具合に|で区切って複数指定が可能。ここで勘違いしやすいのは、includeやexcludeで指定する値はCategoryLabelに相当する部分で、CategoryID(カテゴリーのID)やCategoryDescription(カテゴリーの説明)ではないということ。カテゴリによっては上のソースのように日本語で指定することになる。ちょっと変な感じがするかもしれないけどこれでうまくいのでちょっと変な感じ。

しかし上のソースではまった。色々なページのTipsを見ていると、「MTTopLevelCategoriesタグの直後にMTFilterCategoriesを入れる」と書いてたのでそのようにしたら、うまくカテゴリの表示と非表示が機能しない。

解決法としては

<MTTopLevelCategories sort_method=”SortCatFld::Sort”>
<MTSubCatIsFirst>
<ul>
</MTSubCatIsFirst>
<MTFilterCategories exclude=”会社案内”>
<li><a href=”<$MTCategoryArchiveLink$>”><$MTCategoryLabel$></a></li>
</MTFilterCategories>
<MTSubCatIsLast>
</ul>
</MTSubCatIsLast>
</MTTopLevelCategories>

上のように、MTFilterCategoriesの位置を調整するとうまくいった。各タグや属性の使い方が正しいかは別として、ひとまずこれで思い通りのカテゴリ順序と表示非表示が実現できました。こういう調整は結構出てきそうなので議事録としてメモしときます。おかしいソースやもっとこうしたら良いというのがありましたらコメント等でお知らせください。

後で気づいたんですが、この問題を解決した時間よりこのエントリー書いた時間の方がかかったかも。。

Movable Type4.1リリース

激しく既出ですがSix ApartからMovable Typeの4.0が出てすぐ4.1がリリースされましたね。4.1の目玉は入力項目を追加できるカスタムフィールド実装のようです。まだMTが3.xの頃にCustomFieldsという似たような機能のプラグインが人気でしたが、ついにデフォルトで実装されましたね。

これはMTが単なるブログツールとしての役割から、よりCMS(コンテンツ管理システム)としての機能が求められるようになったことの現われだと思います。1~2年前まではSix Apart側も安易に高度な機能を実装する予定はないと言っていた気がしますが、MTが他のブログツールと違うのは一般ユーザよりもWeb制作者に使用・カスタマイズされる機会が多いと思うので、その要望に応えていった結果が今回のカスタムフィールド実装なのかなと。制作者側からのMTな悩みとしては機能追加=テンプレートタグも増加なわけで覚えることも多くなるわけですけども、その辺は努力するなり得意な仕事仲間にお任せするなりで対応していこうかなというところです。


Yahoo!Japanがブログフィルタを追加

blogfilter.gif
2007年3月27日、Yahoo!Japanの検索オプションにブログフィルタ機能が追加されました。
これは検索結果に個人のブログや掲示板が表示されることが多く、ユーザからの不満が多かったことから追加された機能です。任意のキーワードで検索した際、検索結果にブログが多く含まれていた場合にオプションでブログを検索結果から除外して表示します。

試しに「青森 ブログ」というキーワードで検索した場合、検索結果にブログが比較的多く表示されます。そのページの1番下に「ブログを含めずに再検索 」というリンクがあるのでクリックすると、たしかにいくつかのブログが検索結果から除外されます。その他にも「検索オプション」からあらかじめブログフィルタを機能させることもできます。

個人的には検索結果にブログが表示されることは抵抗ありませんでしたが(仕事柄、技術情報などコアな事柄を検索することが多いからかな?)、周りの知人たちはわりと「検索でブログ引っかかりすぎ」意見が多かったです。一般的なユーザには歓迎される機能かもですね。

ここで気にかかるのは「ブログフィルタで除外されるブログと除外されないブログがある」ということです。ブログと一口に言っても個人ブログもあれば一般企業のブログもあります。Yahoo!のブログフィルタで除外されるのはあくまで無料ブログサービスなどを使って運営されているブログを対象としたものだと個人的に思っているのですが、その区別をシステムがどう判断しているかはYahoo!側は公表していません。しかし実際にブログフィルタを適用しても検索結果に残るブログは存在します。

パッと思いつくのはドメイン別でフィルタをかけているのでは(blog.livedoor.comが含まれるブログは除外とか)と思いますが、実際はどうなんでしょうね。

Six apartがMovable Type Enterprise日本語版を提供開始

以下は私の個人ブログからの引用です。

—————————————————-
シックス・アパート、企業向け製品「Movable Type Enterprise」を発売
今年はMovable Type自体がパワーアップするかプラグインがパワーアップするかどっちかーと思ってたら意外にも前者がキターな感じ。でも必然だったのかなと思ったりします。

仕様は主に企業向けで、大規模なシステムと関連付けた管理機能や対応するデータベースの追加などなど。どのくらいのことができるのかは使ってみないと分からないなーと思いつつ、ちょと高いですね(50万超)^^;体験版とか用意してもらえるとありがたいなーと思いつつ、使う機会あるかなぁ。

Dreamweaver8でMovable Type 3.2を編集する拡張機能

Dreamweaver 8.0.1 拡張機能 for Movable Type 3.2 によるテンプレートカスタマイズについて

という機能がついたようです。バージョンアップという感じなんですね。
個人的にはDream Weaverは使わずにMovable Typeの管理画面で直接チクチクとテンプレートタグやプラグインをいじる派なんですけど、こういうのを上手く使えば効率的なのかなあ。と自分の仕事を客観的に見たり実際にやってみたりするのが大事ですよね。