今後のMTへの要望(その7・テーマ関連)

Movable Type 5の新機能の1つに、テーマ機能があります。
ただ、まだ登場したばかりの機能であり、こなれていない点がいくつかあります。
そこで、テーマ関連の要望をあげたいと思います。

ウェブサイト/ブログの一括エクスポート/適用

Movable Type 5では、ウェブサイトと複数のブログを組み合わせてサイトを作る機会が多いです。
しかし、テーマはウェブサイト/ブログごとに別々に作り、適用するようになっています。

ウェブサイト/ブログが別々でも、使えないことはないですが、便利とは言えません。
そこで、1つのテーマにウェブサイト/ブログを一括してエクスポートしたり、1つのテーマからウェブサイト/ブログに一括して適用したりする機能が必要だと思います。

テンプレートを追加するテーマ

現在のテーマ機能では、テーマを新たに適用すると、既存のテンプレートがすべて置き換えられる仕様になっています。
しかし、既存のテンプレートを残した状態で、別のテンプレートを追加したいという場面もあります。
例えば、すでにあるサイトに、テーマ機能でiPhone対応用のテンプレートを追加したいような場合、テンプレートが置き換わってしまうと困ります。

先日のMTDDCで、シックスアパートの高山氏が、テーマ内のテンプレートを追加する「TemplateImport」というプラグインを発表されました。
このプラグインのような機能を、Movable Typeに標準装備してほしいです。

テーマの部分適用

現状のテーマ機能では、テーマのエクスポートの際には、テンプレート等を選択して必要なものだけをエクスポートすることができます。
しかし、適用の際にはテーマ内の全ての内容を無条件に適用するようになっています。

テーマの性質上、テーマを適用する際には、テーマ内の全ての適用しないと、動作に支障が生じることが多いと思います。
例えば、テンプレートAがテンプレートBをインクルードしている場合、テーマ適用の際にテンプレートBを適用しないと、テンプレートAの再構築時にエラーが発生します。

ただ、自己責任でテーマを部分的に適用したいというユーザーも、いるのではないかと思います。
テーマの部分適用を可能にするような機能もあった方が良いでしょう。
また、部分適用機能を追加する場合、個々のオブジェクトが適用必須/任意のどちらであるかを、ユーザーに通知する機能も必要です。

エクスポーター/インポーターの追加

現状のテーマ機能では、テーマにエクスポートできる内容は、テンプレート/カテゴリ/フォルダ/カスタムフィールド/ファイルです。
テーマは、サイトの「構造」をパッケージ化したものだと思いますので、現状のエクスポートの方向性は間違ってはいないと思います。

ただ、利便性ということで考えると、サンプルの「コンテンツ」をテーマに含められる方が、より良いです。
ブログ記事/ウェブページ/アイテムなども、テーマでエクスポート/インポートできると便利でしょう。

なお、サンプルのコンテンツもテーマに含められるようにする場合、ユーザーによっては、「サンプルコンテンツは不要で、テンプレート等の構造部分だけを適用したい」という人も出てくると思います。
この点からも、前述の「個々のオブジェクトが適用必須/任意のどちらであるかを、ユーザーに通知する機能」が必要になるでしょう。

適用順序の指定

現状のテーマ機能では、テーマのエレメント(テンプレート等)の適用順序は一定ではありません。
しかし、今後のテーマ拡張を考えると、エレメントの適用順序を明示する必要が出てきます。

例えば、ブログ記事とアイテムをテーマで適用できるようにするとします。
この場合、まずブログ記事とアイテムを適用した後で、ブログ記事とアイテム間の関連付けの情報を適用することが必要です。