.netでできることをソフトウェア版でもできたらいいなと思うこと
この記事は「Movable Type Advent Calendar 2025」12日目の記事です。
MT9がリリースされ、MTDDC TOKYO 2025も終わり、12月に入り今年もAdvent Calendarが始まりましたね。
さて、今回はMovable Type.netでできて、ソフトウェア版(クラウド)でも同じように使えたらいいなと思っていることいくつか紹介しようと思います。
CustomFieldValueタグ
「CustomFieldValue」はMovable Type.netではカスタムフィールドの値を表示するのに大変お世話になっているタグです。
実は、ソフトウェア版にも同名のタグが存在していますが、ほぼ使ってないと思います。。
ソフトウェア版は「mt:カスタムフィールドのテンプレートタグ名」で値を表示できて、シンプルでいいのですが、
テンプレートタグ名の命名しだいで、テンプレート編集画面でこのmtタグが通常のmtタグなのかカスタムフィールドの値なのかパッと見わかりずらい時があります。
なので、最近ソフトウェア版でも.netのように「<mt:CustomFieldValue identifier="識別子">」で使えたらいいなーって思ってます。
ソフトウェア版では identifier="識別子" が使えないので、値の取得ができず、しかもEntryCustomFieldsタグなどのコンテキストでしか利用できないので、同じmtタグであったも扱い方全然違います。
identifierを使った時だけ、.net仕様になってくれると嬉しい。
Ifタグ
「If」も.net、ソフトウェア版どちらにもあるタグですが、「CustomFieldValue」に関連することになりますが、
カスタムフィールドの値を判定する際、ソフトウェア版は「<mt:If tag="カスタムフィールドタグ名" eq="hoge">で判定、
.netは「<mt:If tag="CustomFieldValue" identifier="識別子" eq="hoge">で判定と
.netの方が若干記述する量は増えますが、.net記述の方がカスタムフィールドの値で判定しているんだよーっと明確でわかりやすいです。
ソフトウェア版でも同じように使えたらいいなって思ってます。
サイトの識別子
.netではサイト設定-全般の画面に「識別子」を任意で設定できる項目があり、これはブログIDの代わりに利用できます。
ソフトウェア版にはなく、ブログ(サイト)IDを利用します。

ソフトウェア版で最近は少なくなりましたが、サーバー移転などの時にデータベース単位でエクスポートできない場合、
mtの管理画面から「サイトのエクスポート」をして新サーバーのmtにインポートをした時、
ブログ(サイト)IDが変わってしまい、各テンプレート内のID指定している箇所を全て変更する必要があります。
自分で制作したテンプレートであれば、ある程度把握できてたり、モジュール化してるのですが、
そうでない場合は、主要なテンプレートの見直しが必要でちょっと手間がかかります。
<mt:Entries blog_ids="識別子">の使い方がソフトウェア版でも利用できれば、このような場合の手間が省けていいですけどね。
ファイルマネージャーのzipアップ展開
.netのファイルマネージャーは単純なファイルアップロードだけでなく、zipファイルをアップした際に「zipファイルを展開する」にチェックを入れてアップロードすると、アップ完了後にzipファイルを解凍、展開をしてくれます。

ソフトウェア版(クラウド)はFTPソフトでアップロードも可能なので制作者サイドは特に問題はないのですが、クライアントサイドでは、FTPソフトの利用ができない場合もあり、運用で多数のファイルアップロードが必要な場合この展開機能があれば重宝されると思います。
Loopタグ
「Loop」タグは.netにはなく、ソフトウェア版のみのタグになるのですが、.netでも使いたくなる場面にそれなりに遭遇して、その都度なにか別の解決策を模索して何とかしてる感じです。
Loopの性質上、負荷などの観点から.netへの実装は難しいのかもしれませんが、100回、200回とかの制限付きでもいいのでLoopを実装してもらえると大変助かる場面はあると思ってます。
最後は.netにできないことになりましたが、以上です。
この記事は「Movable Type Advent Calendar 2025」12日目の記事でした。
それではまた!