Movable Type のテンプレートをカスタマイズするときのバージョン管理

ここ数日、Movable Type 4.2 のテンプレートをいじっています。目標は vicuna CMS のような Valid XHTML 1.0 Strict で、カスタマイズもしやすいテンプレートを作ることです(まだ遠い目標だけど)。

さて、テンプレートをあれやこれやといじっていると、カスタマイズ中のテンプレートのバージョン管理がしたくなってきます。

Movable Type プロフェッショナル・スタイル MT4.1対応の中では、「TortoiseSVN」を使ったバージョン管理方法がさらっと書いてありますが、バージョン管理ソフトの使い方を新しく覚えずに、もっと手軽にバージョン管理したいとの理由から導入を躊躇していました。

そんな中、ふとMoveble Type のテンプレートを書き出すプラグインを応用してバージョン管理をする方法を思いつき、今はその方法を実践しています。

使用するプラブイン

今回のバージョン管理に使用するプラグインは、「エムロジック放課後プロジェクト: TemplateSetExporter」です。

デフォルト値の変更

上記サイトからプラグインをダウンロードして解凍します。

解凍したフォルダの中の「CMS.pm」(下図参照)というファイルをテキストエディタで開きます。

templatesetexporter01.jpg

そのファイルの 28~33 行目あたりを、カスタマイズ中のテンプレート情報に合わせて書き直しちゃいます。下記のコードの【かっこ】内部分を書き直します。

$tmpl->param('template_set_module_name'  => '【TemplateSet】');
$tmpl->param('template_set_name' => '【Template set】');
$tmpl->param('template_set_desc' => '【description of template set.】');
$tmpl->param('template_set_author_name' => '【author】');
$tmpl->param('template_set_author_link' => '【http://hoge.com】');
$tmpl->param('template_set_version' => '【0.01】');

各項目は上から順に次のとおりです。

  • テンプレートセットのモジュール名(必須)
  • テンプレートセット名
  • テンプレートセットの説明
  • テンプレートセットの作成者名
  • テンプレートセットの作成者のサイトURL
  • テンプレートセットのバージョン番号

これらの情報を書き直しておけば、テンプレートを書き出す(今回でいえばバックアップをとる)たびにいちいち入力する手間が省けます。

プラグインのインストール

書き直したファイルを保存したら、解凍したフォルダ内の plugins フォルダにある TemplateSetExporter フォルダを、Movable Type のシステムがインストールしてあるディレクトリ内の plugins ディレクトリにアップロードすれば完了です。

使用方法

テンプレートをカスタマイズします。

「ブログのテンプレート」一覧画面の右下の「テンプレートセットの書き出し」をクリックします。

templatesetexporter01-2.jpg

先ほど変更した情報が反映された TemplateSetExporter の設定画面が表示されるので、その「テンプレートセットの説明」欄にカスタマイズした内容などを入力して、「次へ」をクリックします。

templatesetexporter02.jpg

これでカスタマイズ中のテンプレートセットが書き出されました。

templatesetexporter03.jpg

「plugins/TemplateSetExporter/Templates」ディレクトリの下にテンプレートセットが保存されるので、この作業をバージョン管理するたびに繰り返せばよいわけです。

templatesetexporter04.jpg

他の設定欄を変更しなくても、自動的に連番が振られるのですごく便利です。

先ほど入力した「カスタマイズした内容」については、書き出されたテンプレートセット内にある「config.yaml」というファイルで確認できます。

templatesetexporter05.jpg

まとめ

このプラグイン、本来のテンプレートセットを書き出すという用途にもすごく便利ですが、ちょっと応用すれば簡易バージョン管理もできちゃうので素晴らしいです!

かなり大雑把なバージョン管理ですが、個人でやっている分にはこれで十分な気もするので、興味のある方はお試しあれ。

  • このエントリーをはてなブックマークに追加
Just a second...