Movable Typeで記事アイテムのリビジョン管理ができる「RevisableAssetプラグイン」

Movable Typeで記事アイテムのリビジョン管理ができる「RevisableAssetプラグイン」

Posted at July 7,2011 1:55 AM
Tag:[MovableType, Plugin, RevisableAsset]

Movable Type 5で、ブログ記事・ウェブページに関連づけたアイテムをリビジョン対象にできる「RevisableAssetプラグイン」を公開します。

RevisableAssetプラグイン

1.機能

MTのデフォルト機能では、ブログ記事・ウェブページに追加した「ブログ記事アイテム」「ウェブページアイテム」はリビジョン対象に含まれません。

例えば、画像の追加・変更・削除を行っても、リビジョンは更新されません。

初回の投稿によりリビジョンを記録
リビジョン一覧

記事タイトルなどを変更するとリビジョンが更新
リビジョン一覧

アイテムの追加・変更・削除を行なって記事を更新してもリビジョンは更新されない
リビジョン一覧

タイトルや本文の変更と同時にアイテムの追加・変更・削除を行なえばリビジョンは更新されますが、関連アイテム情報はリビジョンデータに含まれないので、そのリビジョンデータに入れ替えた場合、関連アイテム情報は消滅してしまいます。

本プラグインを利用すれば、ブログ記事・ウェブページの関連アイテムをリビジョン対象に含めることができます。

2.価格

  • 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
  • 有償版での商用利用:1000円/1サーバ(税抜き、事前に動作確認してください)

無償でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。

3.プラグインのダウンロード・インストール

下記のリンクをクリックして、プラグインアーカイブをダウンロードします。

RevisableAsset_0_01.zip

プラグインアーカイブを展開し、中にある RevisableAssetフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。

システム管理画面のプラグイン設定画面で、「RevisableAsset~」が表示されればインストール完了です。

プラグイン設定画面

4.ウェブページでプラグインの動作を有効にする方法

ウェブページで本プラグインの動作を有効にするには、lib/MT/Page.pmの以下の部分の「1」を「9」に変更してください。この変更を行なわないと関連アイテムがリビジョン管理の対象になりません。

変更前(5.1x)

…前略…
# Callbacks: clean list of changed columns to only
# include versioned columns
MT->add_callback( 'api_pre_save.' . 'page',
    1, undef, \&MT::Revisable::mt_presave_obj );
MT->add_callback( 'cms_pre_save.' . 'page',
    1, undef, \&MT::Revisable::mt_presave_obj );
…後略…

変更後(5.1x)

…前略…
# Callbacks: clean list of changed columns to only
# include versioned columns
MT->add_callback( 'api_pre_save.' . 'page',
    9, undef, \&MT::Revisable::mt_presave_obj );
MT->add_callback( 'cms_pre_save.' . 'page',
    9, undef, \&MT::Revisable::mt_presave_obj );
…後略…

5.0xでは次のようにソースコードの改行位置が若干異なりますが、修正内容は同じです。

変更前(5.0x)

…前略…
# Callbacks: clean list of changed columns to only
# include versioned columns
MT->add_callback( 'api_pre_save.' . 'page', 1, undef, \&MT::Revisable::mt_presave_obj );
MT->add_callback( 'cms_pre_save.' . 'page', 1, undef, \&MT::Revisable::mt_presave_obj );
…後略…

変更前(5.0x)

…前略…
# Callbacks: clean list of changed columns to only
# include versioned columns
MT->add_callback( 'api_pre_save.' . 'page', 9, undef, \&MT::Revisable::mt_presave_obj );
MT->add_callback( 'cms_pre_save.' . 'page', 9, undef, \&MT::Revisable::mt_presave_obj );
…後略…
関連記事
zenback
人気エントリー
トラックバックURL


コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)