Movable Typeのテーマにウェブページを利用できる「PageImExporterプラグイン」バージョンアップ(カスタムフィールド対応)
Movable Typeのテーマにウェブページを利用できる「PageImExporterプラグイン」をバージョンアップしました。
1.変更点
カスタムフィールドの定義自体はMTのデフォルト機能でエクスポート・インポートができますが、ウェブページに入力したカスタムフィールドデータについてはエクスポート・インポートができませんでした。
今回のバージョンアップで、ウェブページのエクスポート時にカスタムフィールドデータを含むようにしました。カスタムフィールドはすべての種類に対応しています。
ウェブサイト構築で開発環境から本番環境にウェブページのデータを移行する場合などにご利用ください。
今回のバージョンアップでプラグイン名も「PageExporter」から「PageImExporter」に変更しました。
2.カスタムフィールドのtheme.yamlでの定義方法
theme.yamlのカスタムフィールドデータは「field.ベースネーム」で定義します。theme.yamlのサンプルは以下の通りです。青色の部分がカスタムフィールドの定義イメージになります。
…前略…
elements:
plugin_default_pages:
component: ~
data:
30:
allow_comments: 1
allow_pings: 1
asset_labels: ''
authored_on: 20100403174432
basename: post
convert_breaks: __default__
created_on: 20110707144724
excerpt: ~
field.cfimage: オレンジ
field.cfselect: 100
field.cftext: 北海道
field.cfcehckbox: 0
field.cfurl: http://user-domain/
…後略…
手動でtheme.yamlを作成する場合はこのように設定してください。チェックボックスは「0」または「1」、アイテムについては、アイテムの名前を設定すると同時に
「asset_labels:」の項目を追加します。アイテムの設定方法については後述します。
3.カスタムフィールドのデータ移行時の注意
カスタムフィールドを含むウェブページのエクスポートデータを開発環境から本番環境に移行する場合、カスタムフィールドの定義を事前にインポートしてください。
4.カスタムフィールドのアイテムについて
3項に加え、カスタムフィールドに画像などのアイテムを含む場合、利用するアイテムを事前にインポートしてください。
アイテムのエクスポート・インポートには「AssetExporterプラグイン」で行えます。
インポート済みのアイテムと、ウェブページのカスタムフィールドで利用するアイテムをひもづけるのは、アイテムのラベル(アイテム編集画面の「名前」)です。テーマ適用時に同じラベル名のアイテムが存在すれば、自動的にプログ記事のカスタムフィールドのアイテムとして登録することができます。
例えば、ブログ(またはウェブサイト)のアイテムに3つの画像「車」「オレンジ」「コーヒー」が登録されているものとします。

そしてウェブページのカスタムフィールドのアイテムに、この3つの画像を登録しています。
このウェブページをテーマに(バージョンアップしたプラグインを使って)エクスポートします。

エクスポートすれば、エクスポートしたtheme.yamlの該当記事にカスタムフィールド(青色部分)と「asset_labels:」にカスタムフィールドのアイテムに登録しているラベル名が設定されます(赤色部分)。
---
author_link: ''
class: blog
description: ''
elements:
plugin_default_pages:
component: ~
data:
30:
allow_comments: 1
allow_pings: 1
asset_labels: コーヒー,車,オレンジ
authored_on: 20120125173322
basename: post
convert_breaks: __default__
created_on: 20120125173322
excerpt: ~
field.pagecfimage1: コーヒー
field.pagecfimage2: 車
field.pagecfimage3: オレンジ
…後略…
このテーマを別のブログにインポート(適用)する際に、同名のラベル名のアイテムが予め登録されていれば、テーマ適用後にウェブページのカスタムフィールドに該当のアイテムが登録される、という仕組みです。
5.プラグインのダウンロード
PageImExporterプラグインは下記のリンク先からダウンロードできます。
Movable Typeのテンプレート編集画面でシンタックスハイライトを無効にする「InvalidateCodeMirrorプラグイン」バージョンアップ
Movable Typeのテンプレート編集画面でシンタックスハイライトを無効にする「InvalidateCodeMirrorプラグイン」をバージョンアップしました。
1.プラグインの機能
下のスクリーンショットのように、テンプレート編集画面のシンタックスハイライト(Codemirror)を無効にします。
Movable Type 5.1テンプレート編集画面(プラグイン適用前)
![]()
Movable Type 5.1テンプレート編集画面(プラグイン適用後)
![]()
2.変更点
MT5.1版でテンプレートのプレビューを実行すると保存動作になってしまう不具合を修正しました。
不具合の原因は、修正前のバージョンでは単純にシンタックスハイライトするためのcodemirror.jsを読み込まないようにしていたためです。読み込む処理を削除したせいで、プレビュー時にJavaScriptエラーが発生し、フォームのデフォルト動作である保存が実行されてしまっていたようです。
3.プラグインのダウンロード
InvalidateCodeMirrorプラグインは下記のリンク先からダウンロードできます。
Movable Typeの記事一覧画面にアイテムを表示する「EntryAssetListingプラグイン」バージョンアップ
Movable Typeの記事一覧画面にアイテムを表示する「EntryAssetListingプラグイン」に不具合があったため、バージョンアップしました。
このプラグインの機能は、下のスクリーンショットのように、記事一覧画面の右端に「アイテム」を表示します。1つの記事に複数のアイテムがある場合は並べて表示します。
EntryAssetListingプラグインを適用したところ
![]()
1.修正点
システム管理画面のブログ記事一覧にあるオプションのチェックボックスで「アイテム」をチェックしてもアイテムが表示されず、代わりに、
Can't call method "id" on an undefined value at C:\xampp\htdocs\MT-5.12-ja\plugins\EntryAssetListing\lib/EntryAssetListing/CMS.pm line 91.
というエラーが発生する不具合を修正しました。
エラーが表示されたところ

原因は、もともとこのプラグインはブログ・ウェブサイトのブログ記事一覧画面のみを対象にしていたのですが、システム管理画面の表示に関する考慮が不足していたためです。ご迷惑をおかけ致しました。
この修正により、システム管理画面のブログ記事一覧でもアイテムが正常に表示されるようになります。
また、システム管理画面のプラグイン設定画面で、システム管理画面のブログ記事一覧のアイテムに関する設定を行えるようにしました。
システム管理画面のプラグイン設定画面

ウェブサイト・ブログの設定はこれまで通り、それぞれの管理画面のプラグイン設定で制御できます。
2.プラグインのダウンロード
EntryAssetListingプラグインは以下のリンク先からダウンロードできます。
Movable Typeのテーマにブログ記事を利用できる「EntryImExporterプラグイン」バージョンアップ(カスタムフィールド対応)
Movable Typeのテーマにブログ記事を利用できる「EntryImExporterプラグイン」をバージョンアップしました。
1.変更点
カスタムフィールドの定義自体はMTのデフォルト機能でエクスポート・インポートができますが、ブログ記事などに入力したカスタムフィールドデータについてはエクスポート・インポートができませんでした。
今回のバージョンアップで、ブログ記事のエクスポート時にカスタムフィールドデータを含むようにしました。カスタムフィールドはすべての種類に対応しています。
ウェブサイト構築で開発環境から本番環境にブログ記事データを移行する場合などにご利用ください。
2.カスタムフィールドのtheme.yamlでの定義方法
theme.yamlのカスタムフィールドデータは「field.ベースネーム」で定義します。theme.yamlのサンプルは以下の通りです。青色の部分がカスタムフィールドの定義イメージになります。
…前略…
elements:
default_entries:
component: ~
data:
2010:
allow_comments: 1
allow_pings: 1
asset_labels: ''
authored_on: 20100403174432
category: cat
convert_breaks: __default__
created_on: 20110707144724
excerpt: ~
field.cfimage: オレンジ
field.cfselect: 100
field.cftext: 北海道
field.cfcehckbox: 0
field.cfurl: http://user-domain/
…後略…
手動でtheme.yamlを作成する場合はこのように設定してください。チェックボックスは「0」または「1」、アイテムについては、アイテムの名前を設定すると同時に
「asset_labels:」の項目を追加します。アイテムの設定方法については後述します。
3.カスタムフィールドのデータ移行時の注意
カスタムフィールドを含むブログ記事のエクスポートデータを開発環境から本番環境に移行する場合、カスタムフィールドの定義を事前にインポートしてください。
4.カスタムフィールドのアイテムについて
3項に加え、カスタムフィールドに画像などのアイテムを含む場合、利用するアイテムを事前にインポートしてください。
アイテムのエクスポート・インポートには「AssetExporterプラグイン」で行えます。
インポート済みのアイテムと、ブログ記事のカスタムフィールドで利用するアイテムをひもづけるのは、アイテムのラベル(アイテム編集画面の「名前」)です。テーマ適用時に同じラベル名のアイテムが存在すれば、自動的にプログ記事のカスタムフィールドのアイテムとして登録することができます。
例えば、ブログのアイテムに3つの画像「車」「オレンジ」「コーヒー」が登録されているものとします。

そしてブログ記事のカスタムフィールドのアイテムに、この3つの画像を登録しています。
このブログ記事をテーマに(バージョンアップしたプラグインを使って)エクスポートします。

エクスポートすれば、エクスポートしたtheme.yamlの該当記事にカスタムフィールド(青色部分)と「asset_labels:」にカスタムフィールドのアイテムに登録しているラベル名が設定されます(赤色部分)。
---
author_link: ''
class: blog
description: ''
elements:
default_entries:
component: ~
data:
2010:
allow_comments: 1
allow_pings: 1
asset_labels: 車,オレンジ,コーヒー
authored_on: 20100403174432
category: cat
convert_breaks: __default__
created_on: 20110707144724
excerpt: ~
field.cfimage1: 車
field.cfimage2: オレンジ
field.cfimage3: コーヒー
…後略…
このテーマを別のブログにインポート(適用)する際に、同名のラベル名のアイテムが予め登録されていれば、テーマ適用後にブログ記事のカスタムフィールドに該当のアイテムが登録される、という仕組みです。
5.プラグインのダウンロード
EntryImExporterプラグインは下記のリンク先からダウンロードできます。
Movable Typeのテーマにブログ記事を利用できる「EntryImExporterプラグイン」バージョンアップ
Movable Typeのテーマにブログ記事を利用できる「EntryExporterプラグイン」をバージョンアップしました。バージョンアップに伴い、プラグイン名も「EntryImExporterプラグイン」に変更しました。
1.変更点
ブログ記事のエクスポート時に、ブログ記事のアイテム(アイテムのラベル)を含むようにしました。これにより、テーマ適用時に同じラベル名のアイテムが存在すれば、自動的にプログ記事のアイテムとして登録することができるようになります。
例えば、ブログのアイテムに3つの画像「車」「オレンジ」「コーヒー」が登録されているものとします。

そしてブログ記事のアイテムに、この3つの画像を登録しています。

このブログ記事をテーマに(バージョンアップしたプラグインを使って)エクスポートします。

エクスポートすれば、エクスポートしたtheme.yamlの該当記事に「asset_labels:」という項目と、ブログ記事アイテムに登録しているラベル名が設定されます(赤色部分)。
---
author_link: ''
class: blog
description: ''
elements:
default_entries:
component: ~
data:
news:
allow_comments: 1
allow_pings: 1
asset_labels: オレンジ,車,コーヒー
authored_on: 20111103225230
category: news
convert_breaks: __default__
created_on: 20111103225243
…後略…
このテーマを別のブログにインポート(適用)する際に、同名のラベル名のアイテムが予め登録されていれば、テーマ適用後にプログ記事アイテムが登録される、という仕組みです。
アイテムは手動でブログに登録してもかまいませんが、他のブログから移行するのであれば、AssetExporterプラグインが便利です。
移行する場合のイメージを図に示します。
アイテムとブログ記事は同時にエクスポートできますが、1つのtheme.yamlファイルでアイテムとブログ記事を同時に適用すると、アイテムをブログ記事より先に登録できない可能性があるため、2つのtheme.yamlに分けた方が確実と思われます(theme.yamlの中でアイテムが先に記述されていれば大丈夫かもしれません)。
2.プラグインのダウンロード
EntryImExporterプラグインは下記のリンク先からダウンロードできます。
Movable Typeでアイテムアップロード時にリサイズ可能な「UploadImageResizerプラグイン」バージョンアップ
Movable Typeでアイテムアップロード時にリサイズ可能な「UploadImageResizerプラグイン」をバージョンアップしました。
このプラグインは、アイテムアップロード画面に表示されたチェックボックスをチェックすれば、アップロード画像をリサイズするためのオプションを表示します。各フィールドに値を設定してアップロードすれば、指定したサイズでアップロードされます。

1・変更点
アップグレード後の報告ですが、MT5.0xに対応しました。MT5.0xのアイテムアップロードでも次のようにオプションが表示されます。
MT5.06のアイテムアップロード画面

また、リサイズ指定後の上書きアップロードに対応しました。リサイズ指定したアップロードで次の画面が表示された場合、「はい」をクリックすればリサイズした内容でアップロードします。

2.プラグインのダウンロード
プラグインは以下のリンクからダウンロードできます。
Movable Typeの管理画面にブログIDを表示する「BlogIDViewer プラグイン」バージョンアップ(MT5.1対応)
現在配布中の、Movable Typeの管理画面にブログIDを表示する「BlogIDViewer プラグイン」をバージョンアップしました。
1.変更点
このプラグインはMT4およびMT5.0x対応でしたが、MT5.1の管理画面にも対応しました。次のように、各画面のウェブサイト名・ブログ名の左側にブログIDを表示します。
ウェブサイト・ブログの表示

ウェブサイト・ブログ選択メニュー

なお、一覧へのID表示はMT5.1よりデフォルト機能で表示できるようになりましたので(下)、本プラグインの機能から削除しました。

また、MT5対応のプラグインをすでにご利用の方についても、一部不要なログを出力する処理が誤って残っていたため削除しました。お手数ですがプラグインの差し替えをお願い致します(バージョンアップしたプラグインは5.0x/5.1xのいずれにも対応します)。
2.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードできます。
アイテムのカスタムフィールド削除動作を改善する「DeleteAssetWithDeleteCFAssetプラグイン」
Movable Type 5で、アイテムのカスタムフィールド削除と同時に関連アイテムを削除する「DeleteAssetWithDeleteCFAssetプラグイン」を公開します。
1.機能
アイテムのカスタムフィールド削除に連動して、ウェブページやブログ記事の「関連アイテム」も同時に削除します。以下、スクリーンショットで説明します。
ブログ記事の「画像」カスタムフィールドにコーヒーカップの画像(eyes0588.jpg)が登録されているものとします。このとき、右端の「ブログ記事アイテム」にも同じファイル名が表示されています。
カスタムフィールドの「画像を削除する」をクリックします。

クリックしたあと、MTのデフォルト状態であれば「ブログ記事アイテム」の「eyes0588.jpg」は削除されませんが、本プラグインを適用することで「ブログ記事アイテム」の表示を削除します。この状態で保存を行えば、該当の画像をブログ記事アイテムから完全に削除します。

該当のカスタムフィールドに対応する関連アイテムだけを削除するので、複数のアイテムが登録されている場合でも大丈夫です。
その他、下記の動作も可能です。
- カスタムフィールドの「画像を選択」をクリックしたときにも、同じカスタムフィールドに登録済みの関連アイテムを削除
- アイテムの選択・削除を繰り返しても、関連アイテムの表示・非表示が連動します
- 画像含め、すべてのアイテムに対応
関連アイテムの方から削除した場合、カスタムフィールドのアイテムを非表示にすることはできませんが、保存後にカスタムフィールドはデフォルト機能で削除されるので、連動という意味では問題ないと思います。
このプラグインはMT5.06/MT5.12で動作確認しています。ブラウザはGoogle Chrome/Firefoxで確認しています。
なお、プラグインだけでは機能追加できない箇所があり、MTのプログラムに1行だけ処理を追加する必要があります(詳細は3項)。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード・インストール
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にある DeleteAssetWithDeleteCFAssetフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「DeleteAssetWithDeleteCFAsset~」が表示されればインストール完了です。

動作の確認は3項の修正を行ってから実施してください。
4.ソースコードの修正
addons/Commercial.pack/lib/CustomFields/Util.pmを任意のエディタで開き、_get_htmlというメソッドに赤色の1行を追加します。5.12であれば536行目あたりです。
sub _get_html {
my ( $key, $tmpl_key, $tmpl_param ) = @_;
…中略…
if ( $type_obj->{asset_type} ) {
my $asset_html = $tmpl_param->{field_value};
if ( defined($asset_html)
&& ( $asset_html =~ m/\smt:asset-id="(\d+)"/i ) )
{
my $asset_id = $1;
if ( my $asset = MT::Asset->load($asset_id) ) {
$ctx->stash( 'asset', $asset );
unless ( defined $image_support ) {
eval { require MT::Image; MT::Image->new or die; };
$image_support = $@ ? 0 : 1;
}
$tmpl->param( 'have_thumbnail', $image_support );
$tmpl->param( 'asset_id', $asset_id );
}
else {
$tmpl->param( value => '' );
}
5.注意事項
このプラグインは、ブログ記事・ウェブページに登録されている関連アイテムが必ずカスタムフィールドで使われてることが前提となります。
アイテムのカスタムフィールドを削除したときに関連アイテムは削除したくないという場合は、プラグインを一時的に使用不可にするか、プラグインをアンインストール(pluginsフォルダから削除)してください。
Movable Typeでアイテム画像を編集できる「Pixenateプラグイン」バージョンアップ
Movable Typeにアップロードしたアイテム画像を編集できる「Pixenateプラグイン」をバージョンアップしました。
厳密には、このプラグインは「Pixenate Photo Editor for Movable Type」でMT4向けに配布されているもので、MT5.1対応に対応させるためのカスタマイズ方法をバージョンアップしました。

1.機能
Pixenateを利用して、アップロードした後でアイテム画像を編集することができます。Pixenateはオンラインで画像を編集できるサービスです。詳しくは「オンラインで画像を編集できる「Pixenate」」をご覧ください。
このプラグインを適用すると、アイテム編集画面に「Edit Image」というリンクを追加します。一覧画面にも編集画面へのリンクを追加します。

このリンクをクリックすれば、画像の編集画面がポップアップで表示されます。各アイコンの操作方法は「オンラインで画像を編集できる「Pixenate」」が参考になると思います。
このように回転させたりできます。
2.変更点
これまではMT5.0x対応のカスタマイズを紹介していましたが、MT5.1対応にしました。

MT5.0xのアイテム一覧画面では「Edit image」というテキストリンクを表示していましたが、MT5.1では、サムネイル画像に編集画面へのリンクを設定しました。マウスをポイントすれば上記のスクリーンショットのようにツールチップで「edit image」を表示します(ブラウザによっては表示されない場合もあります)。
3.プラグインのダウンロード
プラグインは以下のリンクからダウンロードできます。カスタマイズも同じ記事で紹介しています。
BodyFieldEraserプラグイン v0.02
Movable Type 5.0xで本文・追記フィールドを非表示にする「BodyFieldEraserプラグイン」に不具合がありましたのでバージョンアップしました。
1.機能
このプラグインを適用すれば、記事作成編集画面で本文・追記フィールドを表示しません。本文フィールドを使わず、カスタムフィールドを中心に利用する場合に便利です。
MT5.1xの場合は「BodyFieldCustomizerプラグイン」をご利用ください。
2.修正点
プラグインを適用したときにカテゴリフィールドの操作ができなくなる不具合を解消しました。
修正前のカテゴリフィールド

修正後のカテゴリフィールド

3.プラグインのダウンロード
プラグインは以下のリンクからダウンロードできます。
Movable Type 5.1のブログ選択メニューについて
本エントリーでは、Movable Type 5.1のブログ選択メニューの動作について紹介します。この動作はMT5.0やそれ以前のバージョンでも同じと思います。
「ブログ選択メニュー」とは、管理画面左上の▼をクリックしたときに表示されるメニューを指します。
ブログ選択メニュー

1.ウェブサイト管理画面・ブログ管理画面のブログ選択メニュー
ウェブサイト管理画面のブログ選択メニューには、自ウェブサイトは表示されません。次のスクリーンショットは「First Website」を選択したときのもので「First Website」はブログ選択メニューに表示されません。自ウェブサイトのダッシュボードに移動するにはメニューの上にあるパンくずリストをクリックします。
ウェブサイト管理画面のブログ選択メニュー

他のウェブサイトが登録されていれば、次のように表示されます。
ウェブサイト管理画面のブログ選択メニュー(他のウェブサイトがある場合)

同様に、ブログ管理画面のブログ選択メニューには、自ブログは表示されません。次のスクリーンショットは「First Weblog」を選択したときのもので「First Weblog」はブログ選択メニューに表示されません。自ブログのダッシュボードに移動するにはメニューの上にあるパンくずリストをクリックします。
ブログ管理画面のブログ選択メニュー

他のブログが登録されていれば、次のように表示されます。
ブログ管理画面のブログ選択メニュー(他のブログがある場合)

システム管理画面やユーザーダッシュボードについても、自画面のリンクはブログ選択メニューには表示されないようになっています。
2.デフォルト状態のウェブサイト・ブログ表示数
Movable Type 5.1のデフォルト状態でのブログ選択メニューには、一定数のウェブサイト・ブログしか表示されません。一定数以上のウェブサイトやブログは「ウェブサイトを選択」または「ブログを選択」のリンクから選択することになります。
デフォルト状態でのブログ選択メニューに表示されるウェブサイト・ブログ表示数は表のとおりです。この数を超えた分は「××を選択」から選択します。
| ウェブサイト数 | ブログ数 | |
|---|---|---|
| ウェブサイト管理画面 | 2 | 5 |
| ブログ管理画面 | 1 | 4 |
| システム管理 | 3 | 5 |
| ユーザーダッシュボード | 3 | 5 |
ウェブサイト管理画面のブログ選択メニュー

ブログ管理画面のブログ選択メニュー

システム管理画面のブログ選択メニュー

ユーザーダッシュボードのブログ選択メニュー

表示数を変更したい場合は、「Movable Type 5.1のブログ選択メニューをカスタマイズする」をご覧ください。
3.メニューの並びについて
気がつかなかったのですが、ブログ選択メニューには直近にアクセスしたものが表示されるようになっています。
例えば、「First Weblog」というブログの管理画面にアクセスした後、「Second Weblog」というブログの管理画面にアクセスすると、ブログ選択メニューの一番上に(自ブログを除いた)「First Weblog」が一番上に表示されます。
「First Weblog」→「Second Weblog」の順にアクセスした後のブログ選択メニュー

Movable Typeでインクルード元のテンプレートを表示する「IncludeTemplateViewerプラグイン」バージョンアップ
Movable Typeでインクルード元のテンプレートを表示する「IncludeTemplateViewerプラグイン」をバージョンアップしました。
1.機能
Movable Typeのテンプレート編集画面には、インクルードしているテンプレート一覧が表示されますが、インクルード元のテンプレートは表示されません。
このプラグインを利用すれば、インクルード元のテンプレートが表示されます。
2.変更点
今回のバージョンアップでMT5.1に対応しました。
また、グローバルテンプレートにも対応するようにしました。例えば、ウェブサイトやブログのテンプレートからグローバルテンプレートモジュールをインクルードしている場合、グローバルテンプレートモジュールの編集画面にブログのテンプレート名を出力します。

ただし、グローバルテンプレートについてはブログ・ウェブサイトのテンプレートを単純に検索して表示しているだけなので、同一名のテンプレートがある場合などは期待する表示にならない可能性があります。
また、ブログ・ウェブサイトのテンプレートについては、他のブログ・ウェブサイトのテンプレートを検索しないため、関連は表示されません。
3.プラグインのダウンロード
最新版のプラグインは以下のリンクからダウンロードできます。
Movable Typeの記事一括編集画面をパワーアップする「PowerEdit プラグイン」をバージョンアップ
Movable Typeの記事一括編集画面をパワーアップする「PowerEdit プラグイン」をバージョンアップしました。
1.機能
「PowerEdit プラグイン」は、Movable Typeのブログ記事・ウェブページ一括編集画面の編集項目を拡張します。このプラグインを適用すれば、デフォルトの項目の他に、次の項目を編集することができます。
- 本文
- 追記
- タグ
- キーワード
- コメント受信設定
- トラックバック受信設定
2.変更点
プラグインをMovable Type 5.1x対応にしました。MT5.1xでは次のように表示されます。
今回の変更はテンプレートファイルのみです。なお、テンプレートファイルはこれまでの
alt-tmpl/cms/include/entry_table.tmpl
から
alt-tmpl/cms/edit_entry_batch.tmpl
に変更になりました。
3.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
4.カスタムフィールドを表示する方法
PowerEditプラグインではカスタマイズすることによってカスタムフィールドを表示することもできます。

カスタムフィールド追加については、個別のカスタマイズも有償で承ります。なおすべての種類のカスタムフィールドを表示できるものではありませんので予めご了承ください。
自力でカスタマイズできる記事も「PowerEdit プラグインでカスタムフィールドを表示する(MT5:テキスト編)」で公開でしています。
スマホサイト制作に役立つ「ArchivePathSelectorプラグイン」バージョンアップ
Movable Typeでのスマホサイト制作に役立つ「ArchivePathSelectorプラグイン」をバージョンアップしました。
1.ArchivePathSelectorプラグインの概要
このプラグインの目的は、「iPhone 用テンプレートセット」などを使ったスマホ用サイトのアーカイブページに、PC用サイトのアーカイブURLを適用させないことです。
具体的には、Movable Type のブログ管理画面の「設定」→「公開」でアーカイブURLを設定している場合でも、アーカイブテンプレートの出力先としてサイトURLが選択できるようになり、結果としてアーカイブページのURLを自由に設定できます。
下のイメージは、スマホ用サイトのURLを、ページの種別にかかわらず「サイトURL/i」としたい場合の例です。
プラグイン適用イメージ

機能の詳細は「ArchivePathSelector プラグイン」をご覧ください。
2.修正内容
プラグインをMT5.1対応にしました。
MT5.1のアーカイブテンプレート編集画面

3.プラグインのダウンロード
最新版のプラグインは以下のリンクからダウンロードできます。
Movable Typeで記事アイテムのリビジョン管理ができる「RevisableAssetプラグイン」
Movable Type 5で、ブログ記事・ウェブページに関連づけたアイテムをリビジョン対象にできる「RevisableAssetプラグイン」を公開します。

1.機能
MTのデフォルト機能では、ブログ記事・ウェブページに追加した「ブログ記事アイテム」「ウェブページアイテム」はリビジョン対象に含まれません。
例えば、画像の追加・変更・削除を行っても、リビジョンは更新されません。
初回の投稿によりリビジョンを記録

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

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

タイトルや本文の変更と同時にアイテムの追加・変更・削除を行なえばリビジョンは更新されますが、関連アイテム情報はリビジョンデータに含まれないので、そのリビジョンデータに入れ替えた場合、関連アイテム情報は消滅してしまいます。
本プラグインを利用すれば、ブログ記事・ウェブページの関連アイテムをリビジョン対象に含めることができます。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード・インストール
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にある 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 );
…後略…
Movable Typeで記事のプレビューが別ウィンドウで行える「PreviewTargetChangerプラグイン」v0.10
Movable Typeで記事やテンプレートのプレビューが別ウィンドウで行えるプラグイン「PreviewTargetChanger」をv0.10にバージョンアップしました。
1.変更点
Movable Type 5.1に対応しました。その他、主な機能は次のとおりです。
- プレビュー画面上部の「編集画面に戻る」のエリアは非表示にします
- テンプレートのプレビューも別ウィンドウで確認可能です
- ブログ別プラグイン設定画面から、プレビュー画面のターゲット(ウィンドウ/タブ)の選択が可能
2.プラグインのダウンロード
PreviewTargetChangerプラグインは以下のリンクからダウンロードできます。
InvalidateCodeMirrorプラグイン v0.10
Movable Type 5のテンプレート編集画面でCodeMirrorを無効にする「InvalidateCodeMirror」プラグインをバージョンアップしました。
1.修正内容
Movable Type 5.1に対応するようにしました。
Movable Type 5.1テンプレート編集画面(プラグイン適用前)
![]()
Movable Type 5.1テンプレート編集画面(プラグイン適用後)
![]()
バージョンアップしたプラグインはMovable Type5.0xでも動作します。
2.ダウンロード
最新版のプラグインは以下のリンクからダウンロードできます。
ウィジェットセット更新時にインデックステンプレートを再構築する「RebuildByChangeWidgetプラグイン」
Movable Type 5で、ウィジェットセット更新時にインデックステンプレートを再構築する「RebuildByChangeWidgetプラグイン」を公開します。
1.機能
プラグインで指定した特定のウィジェットセットを更新すると、プラグインで指定したインデックステンプレートを再構築します。
利用シーンは、インデックステンプレートでページを作成し、そのページでウィジェットセットを使って画像などの管理を行い、画像の入れ替えを行う場合です。ウィジェットセット更新後、テンプレート再構築の手間を省くことができます。

動作確認バージョンはMT5.xですが、MT4.xでも動作すると思います。
2.ダウンロード・インストール
以下のリンクからダウンロードし、展開した中にあるRebuildByChangeWidgetフォルダをpluginsディレクトリにアップロードしてください。
システム管理画面の「ツール」→「プラグイン」で「RebuildByChangeWidget~」が表示されればインストール完了です。

3.プラグインの設定
ブログ管理画面の「ツール」→「プラグイン」→「RebuildByChangeWidget~」→「設定」と進み、各フィールドに値を入力してください。

各フィールドの意味は次のとおりです。
- ウィジェットセット名:更新時に再構築を行いたいウィジェットセット名を設定
- インデックステンプレート名:上記のウィジェットセットを更新したときに再構築したいインデックステンプレート名を設定
現状では1つのウィジェットセットと1つのインデックステンプレートしか設定できませんが、今後は複数設定できるように改善を行いたいと思います。
DefaultValueSetterプラグイン v0.20
Movable Type(MT)でブログ記事の入力フィールドに初期値を設定する「DefaultValueSetterプラグイン」をバージョンアップしました。
1.機能概要
このプラグインを利用すれば、次のようにブログ記事のタイトル・本文・追記・タグ・概要・キーワードに初期値を設定できます。
プラグイン設定画面

ブログ記事編集画面

2.修正内容
v0.20では次の修正を行いました。
- hetemlの自動インストール版MTOSで、プラグインに設定した値がブログ記事に反映されない不具合を修正
- MT5.1対応(MT5.0xにも対応可能)
- 管理画面の修正
3.プラグインのダウンロード
最新版のプラグインは以下のリンクからダウンロードできます。
Movable Typeのブログ記事をFacebookに投稿する「FacebookPosterプラグイン」
Movable Typeのブログ記事をFacebookに投稿する「FacebookPosterプラグイン」を紹介します。このプラグインは藤本壱さんが開発されたものです。
この記事は、下のような感じでFacebookに投稿されました。

1.主な機能
- ブログ記事/ウェブページをFacebookの個人アカウントのウォールに投稿できます
- 投稿すると、ブログタイトル・ブログの説明・サイトの画像・記事タイトル・記事リンク・概要(または指定文字数の本文)が反映されます
- 再投稿が可能です
2.プラグインのダウンロードとインストール
以下のリンクからプラグインのダウンロードしてください。
ダウンロードしたアーカイブを展開し、中にあるFacebookPosterフォルダをMovable Typeのpluginsディレクトリにアップロードします。
アップロード後、システム管理画面にアクセスするとデータベースのアップグレードが開始するので、「アップグレード開始」をクリック。
サインインします。

これでアップグレードが完了したので、「Movable Typeに戻る」をクリック。
システム管理画面の「ツール」→「プラグイン」で「FacebookPoster~」が表示されればインストール完了です。

3.プラグインの設定(アプリケーション作成と認証)
プラグインを利用したいブログ管理画面の「ツール」→「プラグイン」→「FacebookPoster~」→「設定」をクリックし「アプリケーションを登録」をクリック。

適当なアプリケーション名を設定し、同意するを選択して「アプリケーションを作成」をクリック。

セキュリティコードを入力して「送信」をクリック。

アプリケーション設定画面に移動するので、「Web SIte」タブをクリックして、「Site URL」と「Site Domain」を設定します。「Site URL」は利用するブログのURL、「Site Domain」はそのドメインを設定します。設定が完了したら「変更を保存」をクリック。
設定が完了すると「マイアプリ」のページに移動するので、「アプリID」をテキストコピーしてください。この画面からアプリケーション設定画面に戻りたい場合は、右側にある「設定を編集」をクリックします。

プラグイン設定画面に戻り、「アプリケーションのID」に「アプリID」を設定し、「アクセストークンを取得」をクリック。

アプリの許可画面に移動するので「許可する」をクリック。
プラグイン設定画面にアクセストークン表示されていれば取得完了です。

アイコン画像や投稿の設定を行い、「変更を保存」をクリック。「デフォルトで公開する」はブログやウェブサイト全体の振舞いを決めるものです。ここでチェックをしても記事編集画面で個別にチェックをはずすことができます。

これでブログ記事を投稿すれば、Facebookのウォールに投稿されます。
5.Facebookへの投稿・再投稿
Facebookに記事を投稿するには、記事編集画面に表示された「Facebookに公開」をチェックしてください。

チェックした状態で投稿すると、チェックが外れた状態に遷移します。記事の修正を行ったときにFacebookに投稿したい場合は再度チェックを行ってください。
Movable Typeのブログ記事をFacebookに投稿する「FBWallPostプラグイン」
Movable Typeのブログ記事をFacebookに投稿する「FBWallPostプラグイン」を紹介します。このプラグインはmacminiosxさんが開発されたものです。
この記事は、下のような感じでFacebookに投稿されました。

1.主な機能
- ブログ記事をFacebookの個人アカウントのウォールに投稿できます
- ブログ記事をFacebookページのウォールに投稿できます
- 投稿すると、ブログタイトル・ブログの説明・サイトの画像・記事タイトル・記事リンク・概要(または指定文字数の本文)が反映されます
- 再投稿や日時指定投稿が可能です
2.プラグインのダウンロードとインストール
以下のリンクからプラグインのダウンロードしてください。プラグインは「Tweetウエア」なので、利用に際してはブログやTwitterなどでの投稿が必要です。
ダウンロードしたアーカイブを展開し、中にあるFBWallPostフォルダをMovable Typeのpluginsディレクトリにアップロードします。
アップロード後、システム管理画面の「ツール」→「プラグイン」で「FBWallPost~」が表示されればインストール完了です。

3.プラグインの設定1(アプリケーション作成と認証)
プラグインを利用したいブログ管理画面の「ツール」→「プラグイン」→「FBWallPost~」→「設定」をクリックし「OK! All required Perl modules were found. 」が表示されていればそのままプラグインの利用が可能なので、「Register an Application」をクリック。「NG!~」が表示されている場合、表示されているPerlモジュールをインストールする必要があります。

Facebook開発者ページに移動するので右上にある「+ Set Up New App」をクリック。

適当なアプリケーション名を設定し、同意するを選択して「アプリケーションを作成」をクリック。

セキュリティコードを入力して「送信」をクリック。

アプリケーション設定画面に移動するので、「Web SIte」タブをクリックして、「Site URL」と「Site Domain」を設定します。「Site URL」は利用するブログのURL、「Site Domain」はそのドメインを設定します。設定が完了したら「変更を保存」をクリック。
設定が完了すると「マイアプリ」のページに移動するので、「APIキー」と「アプリの秘訣」をテキストコピーしてください。この画面からアプリケーション設定画面に戻りたい場合は、右側にある「設定を編集」をクリックします。

プラグイン設定画面に戻り、「Your API key」に「APIキー」、「Your API secret」に「アプリの秘訣」の内容をそれぞれ設定し、「変更を保存」をクリック。

プラグイン設定画面に戻り、表示されている「Get Access token」をクリック。

アプリの許可画面に移動するので「許可する」をクリック。
Movable Typeの管理画面に移動して「Get Access Token Success!」が表示されればOKなので、その画面にある「Back To Plugin config」をクリック。

先程の画面に「OK! Complete Sets this token.」が表示されていれば取得完了です。

Facebookページにも投稿する場合は、前の画面のすぐ下にある「Get Page Access token」の「Select facebook page」をクリック。

Facebookページを選択して「Save」をクリック。

Facebookページ名、ID、アクセストークンを確認して「Close」をクリック。

プラグイン設定画面をリロードして、「Get Page Access token」の項目に「Page name」「Page ID」が表示されていれば完了です。

4.プラグインの設定1(投稿設定)
「Wall Post Setting」に各項目を設定します。項目の意味は次の通りです。
- enable post facebook profile.:ウォールに投稿します
- enable post facebook page:XXX:Facebookページのウォールに投稿します
- Words in excerpt:(option):概要フィールドに入力がない場合、本文フィールドから指定文字数分を投稿します。概要フィールドに入力があれば本設定項目を無視して概要フィールドの内容をすべて投稿します。
- Picture URL:表示したいサイト画像のURLを指定します

サイト画像を設定すると、変更後、このように表示されます。テスト投稿するには、一番下の「Test post to wall」をクリック。

次のように表示されればテスト投稿完了です(下の画像はFacebookページには未投稿)。

Facebookのウォールにはこのように表示されます。確認したあとは削除しましょう。

Google Analytics のリンクタグ設定機能を使用することもできます(説明は割愛)。

5.再投稿
Facebookに記事を再投稿するには、記事編集画面に表示された「Facebook Repost」をクリックします。

Movable Typeの本文フィールドの表示オプションを有効にしたりドラッグできるようにする「BodyFieldCustomizerプラグイン」
Movable Type 5で本文・追記フィールドの動作をカスタマイズする「BodyFieldCustomizerプラグイン」を公開します。このプラグインは以前公開した「BodyFieldEraserプラグイン」から派生させたものです。
MT5.1x版です。
1.機能
ブログ記事またはウェブページの本文・追記フィールドの表示オプションを有効にします。
プラグイン適用前

プラグイン適用後かつ非表示にしたところ

また、本文・追記フィールドをドラッグできるようにします。この機能は奥脇さんの以下の記事を参考にさせていただきました。この場をお借りしてお礼申し上げます。
本文・追記フィールドがドラッグ可能

注:ドラッグ設定時のスタイルはすべてのブラウザで確認できていません。
それぞれの機能は独立して選択できます。両方を同時に利用することも可能です。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.ダウンロード・インストール
以下のリンクからダウンロードし、展開した中にあるBodyFieldCustomizerフォルダをpluginsディレクトリにアップロードしてください。
システム管理画面の「ツール」→「プラグイン」で「BodyFieldCustomizer~」が表示されればインストール完了です。

4.プラグインの設定
プラグインを適用したいウェブサイト・ブログの「ツール」→「プラグイン」をクリックし、「BodyFieldCustomizer」→「設定」をクリックして、利用したい機能を選択し、「変更を保存」をクリックします。デフォルトはいずれも「無効」になっています。

4.その他
主な機能は無効なチェックボックスを有効にすることだったのですが、コードの解析にかなり時間がかかりました・・・。
PageExporterプラグイン v0.10
Movable Type(MT)5 でウェブページをテーマにエクスポートする「PageExporterプラグイン」をバージョンアップしました。
1.変更点
テーマのエクスポート時のオプション画面をMovable Type 5.1にも対応するようにしました。
MT5.0xでのオプション画面

MT5.1でのオプション画面

デザインの変更のみで前バージョンとの機能差分はありませんが、ひとつのプラグインで5.0x/5.1の両方に対応するようにしたので、現在MT5.0xで使っている方はバージョンアップすれば、MT5.1にアップグレードした後もそのままお使いになれます。
2.ダウンロード
バージョンアップしたプラグインは、github のPageExporter プラグインのページからダウンロードできます。
BodyFieldEraserプラグイン
Movable Type 5で本文・追記フィールドを非表示にする「BodyFieldEraserプラグイン」を公開します。MT5.0x版です。
1.機能
このプラグインを適用すれば、記事作成編集画面で本文・追記フィールドを表示しません。本文フィールドを使わず、カスタムフィールドを中心に利用する場合に便利です。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.ダウンロード・インストール
以下のリンクからダウンロードし、展開した中にあるBodyFieldEraserフォルダをpluginsディレクトリにアップロードしてください。
2011.04.20 初版
2011.08.07 v0.02 カテゴリが選択できない不具合を対処
システム管理画面の「ツール」→「プラグイン」で「BodyFieldEraser~」が表示されればインストール完了です。

4.プラグインの設定
プラグインを適用したいウェブサイト・ブログの「ツール」→「プラグイン」をクリックし、「BodyFieldEraser」→「設定」をクリックして、「本文・追記フィールドを非表示にする
」をチェックし、「変更を保存」をクリックします。デフォルトはチェックを外した状態になっています。

EntryExporterプラグイン
Movable Typeのテーマ機能にブログ記事のエクスポートを可能にするプラグインを公開します。このプラグインは、2010年7月31日に行われた「MT DDC TOKYO(テーマ編)」ですでに公開したものですが、ブログで正式にエントリーしていなかったため、本エントリーにて改めて紹介致します。
1.機能
Movable Type 5.02 時点でのエクスポート機能では、ブログ記事をエクスポートすることができません(インポートは可能ですがtheme.yamlを編集する必要あり)。
このプラグインは、ウェブサイトまたはブログのウェブページをテーマにエクスポートします。もちろんエクスポートしたアイテムを編集なしでインポートすることもできます。
2.価格
MT5.0版:無償
MT5.1版(アイテム対応版):無償
MT5.1版(カスタムフィールド対応版):以下の通りです。
非商用利用:無償
商用利用:3150円/1インストールMT(購入前に必ず動作確認してください)
商用以外でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
MT5.0x版は、以下のEntryExporter_0_01.zipをダウンロードしてください。
MT5.1x版は、以下のEntryImExporter_0_20.zipまたはEntryImExporter_0_30.zipをダウンロードしてください。
- EntryImExporter_0_20.zip(アイテム対応版)
- EntryImExporter_0_30.zip(カスタムフィールド対応版)
4.プラグインのインストール
プラグインアーカイブを展開し、中にあるEntryExporterフォルダ(またはEntryImExporterフォルダ)ごと、Movable Typeのアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「EntryExporter~」または「EntryImExporter~」が表示されればインストール完了です。

5.利用方法
ブログ記事をエクスポートしたいウェブサイトまたはブログの「ツール」→「テーマのエクスポート」をクリックすると、「ブログ記事」のチェックボックスが表示されます(1件もない場合は表示されません)。

「詳細」をクリックすれば、オプション画面からエクスポートするブログ記事を選択できます。

6.ブログ記事アイテム・カスタムフィールドのエクスポートとインポート
カスタムフィールドやアイテムを含んだ具体的な移行手順については以下の記事を参照してください。
CustomFieldDataCheckerプラグイン v0.02
Movable Typeのカスタムフィールドで入力したデータの重複チェックを行う「CustomFieldDataCheckerプラグイン」をバージョンアップしました。
1.変更点
v0.01ではウェブページのカスタムフィールドのみ対象でしたが、v0.02ではブログ記事もチェック対象に加えました。

また、複数のカスタムフィールドをチェック対象にできるようにしました。複数のカスタムフィールドをチェック対象にするには、プラグインの設定画面にチェック対象にしたいカスタムフィールドのベースネームをカンマ区切りで設定します。

さらに、重複した際のエラーメッセージを改善しました。改善前はエラーとなったカスタムフィールドのベースネームを表示していましたが、改善後はカスタムフィールド名を表示するようにしました。
改善前

改善後

最後に、プラグイン設定画面にベースネームが設定されていない場合、記事の新規作成時にエラーとなる不具合を解消しました。
2.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
UserEmailCheckerプラグイン v0.02
Movable Type のコミュニティ機能でユーザー登録時にメールアドレスの重複チェックを行う「UserEmailCheckerプラグイン」に不具合がありましたので改修しました。
このプラグインを利用すれば、ユーザー登録・ユーザー情報更新時にメールアドレスの重複チェックを行うことができます。
1.変更点
v0.01では、ユーザー登録後のユーザー情報更新時に無条件にメールアドレスチェックを行ってしまっていたので、v0.02ではユーザー情報更新時の処理を次のように変更しました。
- メールアドレスが変更されていない場合は重複チェックを実施しない
- メールアドレスが変更された場合は重複チェックを実施
また、ユーザー情報更新時に本来のエラーとなる場合のメッセージを追加しました。
ユーザー情報更新時の正規の重複エラー

管理画面でのユーザー情報更新時も同様のエラーを表示します。
管理画面でのユーザー情報更新時の正規の重複エラー

2.ダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
ExcerptRichTextプラグイン v0.10
公開中の「ExcerptRichText プラグイン」を2年ぶりにバージョンアップしました。
このプラグインは、Movable Typeの「概要」フィールドでリッチテキストなどの各種フォーマットを使えるようにするためのものです。
プラグイン適用前

プラグイン適用後(概要のタブが表示)

また表示オプションの「概要」が非表示になります。
1.修正内容
このプラグインはMovable Type 4.x向けに作成したものですが、冒頭の画像のようにMovable Type 5.0xで動作することを確認しました。それによる機能変更は特になく、YAMLで書き直したのみとなります。
2.ダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
UserEmailCheckerプラグイン
Movable Typeのコミュニティ機能などを使ったユーザー登録時、同一メールアドレスのユーザー有無をチェックする「UserEmailCheckerプラグイン」を公開します。
1.機能
コミュニティ機能によるユーザー登録時、同一メールアドレスのユーザーが既に存在する場合、登録エラーとします。

管理画面からの登録時にもチェックします。

2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:3150円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
以下のリンクよりプラグインアーカイブをダウンロードします。
2011.03.17 v0.01 初版
2011.03.20 v0.02 更新時にエラーになる不具合等を修正
4.プラグインのインストール
プラグインアーカイブを展開し、中にある UserEmailCheckerフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「UserEmailChecker~」が表示されればインストール完了です。

ブログ記事削除後の遷移画面を指定できる「ReturnArgsChangerプラグイン」
Movable Typeでブログ記事削除後の遷移画面を指定できる「ReturnArgsChangerプラグイン」を公開します。
1.機能
ブログ記事編集画面で自ブログ記事を削除(下の画面)すると、削除後の画面はブログ記事一覧画面になります。ウェブページ作成画面も同様に、ウェブページ一覧画面に遷移します。

本プラグインを利用すれば、削除後の画面にダッシュボードなどを指定することができます。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
以下のリンクよりプラグインアーカイブをダウンロードします。
4.プラグインのインストール
プラグインアーカイブを展開し、中にある ReturnArgsChangerフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「ReturnArgsChanger~」が表示されればインストール完了です。

5.画面の指定方法
プラグインを利用したいブログの「ツール」→「プラグイン」→「ReturnArgsChanger~」→「設定」をクリックし、テキストフィールドにreturn_argsとなるパラメータを設定します。

例えば、ブログID2のダッシュボードに戻る場合は次の内容を設定します。
__mode=dashboard&blog_id=2
ブログID2のブログ記事投稿画面に戻る場合は次の内容を設定します。
__mode=view&_type=entry&blog_id=2
その他の画面に遷移させたい場合は、該当画面を開いたときのURLの「http://~/mt.cgi?」以降の文字列を設定してください。
Pixenateプラグインで画像をリサイズできない不具合の対処
Movable Typeにアップロードしたアイテム画像を編集できる「Pixenateプラグイン」を以前紹介しましたが、riatwさんから「サイズ変更がアイテムに反映されません」というご連絡を頂きましたので、プラグインの対処方法を紹介します。
この問題はMovable Type 4.xでも発生しますが、ここでの対象バージョンはMovable Type 5.0xのみです。
1.問題点
編集画面を開きます。
「ZOOM OUT」をクリックして画面を縮小します。このサンプルの編集前後のサイズは、
- 編集前:640×480px
- 編集後:320×240px
です。

この状態で「Save and Quit」をクリックしても、リサイズした結果がアイテムに反映されません。再度編集すると元のサイズで表示されます。要するに編集の実績がまったくありません。

リサイズ以外でも次のように切り抜いた場合、
変更後のサイズがアイテムに反映されないので、アイテム編集画面の画像が元サイズ(=640×480px)で表示されてしまいます。Pixenateによる再編集時は元画像を原寸で表示するので問題ありませんが、実用レベルではありません。

2.原因と対処案
原因はPixenateのAPIでリサイズ後のサイズ情報を取得するAPIがなく、そもそもアイテム更新時にサイズ情報が保存されていません。アイテムはmt_asset_metaテーブルに「image_height」「image_width」というデータを保持していますが、そのデータが書き換えられていません。
また、切り抜きや回転を行わないリサイズのみの場合は、サイズ情報だけでなく、画像自体に何も変更が加えられていません。
ということでリサイズが行われた場合、編集前のサイズと編集後のサイズを比較し、変更があった場合にmt_asset_metaテーブルの書き換えと、画像データの更新を行うようにしてみました。
以下は備忘録ですので、対処を行いたい方は読み飛ばして3項に進んでください。
Pixenateプラグインでリサイズ以外の編集が行われた場合、PXN8.getUncompressedImage()というAPIでURLが取得できますが、リサイズのみの場合はそのAPIではURLが取得できず、その場合、保存のためのプラグインメソッドpixenate_save_changes()が起動されません。よってまずはここを起動するように変更します。
また、元画像のサイズはPXN8.getImageSize()で取得できますが、編集後のサイズを取得するAPIがありません。よって、編集後のサイズは画像編集画面に表示されているimg要素のwidth属性とheight属性から取得し、PXN8.getImageSize()で取得したサイズと異なる場合、プラグインメソッドpixenate_save_changes()を起動し、サイズデータはその引数として渡します。他の編集が行われておらずかつサイズ変更がない、つまり編集が何も行われていない場合のみプラグインメソッドpixenate_save_changes()を起動せず終了します。
起動されたpixenate_save_changes()では、リサイズ以外の編集が行われた場合はURLを利用してLWP::Simple::getstoreで一旦アイテムを保存します(既存処理。画像はここで更新されます)。その後、引数で渡されたサイズと、DBに保持されているアイテムのサイズを判定し、異なる場合はアイテムのサイズ情報更新と、リサイズのみの編集を考慮し、MT::ImageとMT::FileMgrを使って画像の更新を実施します。
3.対処1(テンプレートファイルの差し替え)
mt-plugin-pixenate-tmplのページからアーカイブをダウンロードし、アーカイブを展開した中にある、
- alt-tmpl/cms/edit_asset.tmpl
- alt-tmpl/cms/include/asset_table.tmpl
- plugins/Pixenate/tmpl/Editor.tmpl
を、元のプラグインの同じディレクトリにあるファイルと差し替えてください。今回の修正で差し替えが必要なファイルはEditor.tmplのみなので、すでにMT5.0で利用されている場合はその1ファイルのみを差し替えてください。
4.対処2(プラグインファイルの修正)
Pixenate.plを任意のエディタで開き、以下のsave_changes_mode()の内容を修正してください。
変更前(赤色を削除)
sub save_changes_mode {
my $app = shift;
my $imageId = $app->{query}->param('id');
my $filepath = get_filepath($imageId);
my $changedImageURL = $app->{query}->param('changedImageURL');
my $rc = LWP::Simple::getstore($changedImageURL,$filepath);
return "{filepath: \"$filepath\", rc: $rc}";
}
変更後(青色を追加)
sub save_changes_mode {
my $app = shift;
my $imageId = $app->{query}->param('id');
my $filepath = get_filepath($imageId);
my $changedImageURL = $app->{query}->param('changedImageURL');
my $rc = LWP::Simple::getstore($changedImageURL,$filepath);
my $asset = MT::Asset::Image->load($imageId);
my $width = $app->{query}->param('width');
my $height = $app->{query}->param('height');
require MT::Image;
require MT::FileMgr;
my $fmgr ||= $app->blog ? $app->blog->file_mgr : MT::FileMgr->new('Local');
my $image = new MT::Image( Filename => $asset->file_path );
my ($data, $w, $h) = $image->scale( Height => $height, Width => $width )
or return $asset->error(MT->translate( "Error scaling image: [_1]", $image->errstr ) );
(my $tmp = $asset->file_path) =~ s!(.*)/[^/]+$!$1!;
my $path = File::Spec->catfile( $tmp, $asset->file_name );
$fmgr->put_data( $data, $path, 'upload' )
or return $asset->error(
MT->translate( "Error creating file: [_1]", $fmgr->errstr ) );
$asset->meta('image_width', $width);
$asset->meta('image_height', $height);
$asset->save;
}
修正後、Pixenateでのサイズ変更が反映されるようになります。

画像編集画面でもサイズが反映されます。

CategorySelectorFilterプラグイン v0.02
Movable Type でカテゴリ選択を限定する「CategorySelectorFilterプラグイン」をバージョンアップしました。このプラグインを利用すれば、次のように選択カテゴリを1つに限定できます。
選択後の状態(選択カテゴリ以外のカテゴリのチェックボックスをdisableにする)

1.変更点
v0.01では、登録しているすべてのカテゴリを選択対象にする場合でも1つずつ指定する必要がりましたが、v0.02では「all」を設定するか、設定がない場合は自動的にすべてのカテゴリを選択対象とします。
v0.01のプラグイン設定画面(すべてのカテゴリを選択対象にする場合も設定要)

v0.02のプラグイン設定画面(「all」または何も設定しない)

また、Movable Type 5.1(動作確認はベータ2)対応にしました。
Movable Type 5.1のカテゴリ選択画面

2.ダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
Movable Typeのアイテム一覧にフォルダを表示する「AssetFolderViewerプラグイン」
Movable Typeのアイテム一覧にフォルダを表示する「AssetFolderViewerプラグイン」を公開します。
1.機能
このプラグインを適用することで、アイテム一覧にアイテムのフォルダ(パス)を表示します。
表示するパスはサイトパスを除いた部分になります。フォルダ機能を利用してアップロードしたアイテムは、フォルダに該当するパスが表示されます。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1000円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
GithubのAssetFolderViewerプラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
4.プラグインのインストール
プラグインアーカイブを展開し、中にある AssetFolderViewerフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「AssetFolderViewer~」が表示されればインストール完了です。

Movable Typeで選択カテゴリを限定する「CategorySelectorFilterプラグイン」
Movable Type でカテゴリ選択を限定する「CategorySelectorFilterプラグイン」を公開します。
1.機能
ブログ記事投稿画面のカテゴリ選択でカテゴリをチェックすると、他のカテゴリを選択できないようにします。チェックを外せば再び選択できるようになります。
選択前の状態

選択後の状態(選択したカテゴリ以外のカテゴリのチェックボックスはdisable)

また、選択可能なカテゴリをプラグインで指定することもできます。チェックを外しても選択不可のカテゴリは選択できません。
例:サブカテゴリのみを選択可能にした状態

細かい話ですが、選択可能なカテゴリはマウスオーバーで背景色を変更しますが、選択不可の状態では背景色を変えることはできません。
選択可能なカテゴリ上でのマウスオーバー

選択不可なカテゴリ上でのマウスオーバー

2.謝辞
このプラグインではJavaScriptを実装していますが、その一部について、たいようさんがMTQに投稿されたスクリプトを利用させて頂いてます。この場をお借りしてお礼申し上げます。
3.プラグインのダウンロード
GithubのCategorySelectorFilterプラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
4.プラグインのインストール
プラグインアーカイブを展開し、中にある CategorySelectorFilterフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「CategorySelectorFilter~」が表示されればインストール完了です。

5.プラグインの設定
プラグインを利用したいブログ管理画面のプラグイン一覧で、「CategorySelectorFilter~」→「設定」をクリックし、「このプラグインを有効にする」をチェックして、「選択可能なカテゴリID」に選択可能にしたいカテゴリIDを入力します。カテゴリIDが複数ある場合はカンマ区切りで設定してください。

すべてのカテゴリを選択対象にする場合は、何も設定しないか「all」を設定してください。

PublishButtonChangerプラグイン(Movable Type 5.1対応)
Movable Type 5.1のブログ記事投稿画面・ウェブページ作成画面の公開ボタンの動作を変更するPublishButtonChangerプラグインを公開します。
このプラグインはMovable Type 5.0x版の「PublishButtonChangerプラグイン」を全面改修したものです。
1.機能
ブログ記事・ウェブページ作成画面で次の動作を行う場合、確認のダイアログを表示します。「OK」をクリックすればクリックしたボタンの動作を継続し、「キャンセル」をクリックすれば中止します。
- 新規作成→「公開」をクリックしたとき
- 未公開(原稿)状態→「公開」をクリックしたとき
- 公開状態→「更新」をクリックしたとき
- 公開状態→「保存(=下書きに戻す)」をクリックしたとき
新規作成→「公開」をクリックしたとき/未公開(原稿)状態→「公開」をクリックしたときのダイアログ

公開状態→「更新」をクリックしたときのダイアログ

公開状態→「保存」をクリックしたときのダイアログ

ダイアログのメッセージを変更することも可能です。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:3150円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
以下のリンクよりPublishButtonChangerプラグインアーカイブをダウンロードします。
2011.02.18 v0.10 Movable Type 5.1対応
4.プラグインのインストール
プラグインアーカイブを展開し、pluginsフォルダ内にある PublishButtonChangerフォルダを、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「PublishButtonChanger~」が表示されればインストール完了です。

これで冒頭の機能が動作することを確認してください。
5.プラグインの設定
ウェブサイトまたはブログ管理画面(システム管理画面ではありません)のプラグイン一覧にある「PublishButtonChanger~」をクリックし、さらに「設定」をクリックすれば、ダイアログのメッセージを変更できます。

Movable Typeの管理画面で任意の表示件数を指定できる「LimitPerPageChangerプラグイン」
Movable Typeの管理画面の一覧表示で任意の表示件数を指定できる「LimitPerPageChangerプラグイン」を公開します。
1.機能
Movable Typenの管理画面の一覧表示では「表示オプション」を使って1ページあたりの表示件数を変更できますが、変更できる件数は25/50/100/200の4種類しかありません(下)。

このプラグインを適用すれば表示数の選択フォームをプルダウンからテキストボックスに変更し、「10」「35」「80」など、好きな件数を設定できるようになります。もちろん入力した件数も保存できます。
プラグイン適用後

デフォルト値は25件です。入力件数は管理画面別に設定可能です。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1000円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
GithubのLimitPerPageChangerプラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
4.プラグインのインストール
プラグインアーカイブを展開し、中にある LimitPerPageChangerフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「LimitPerPageChanger~」が表示されればインストール完了です。

ApproveCommentPermissionプラグイン v0.02
Movable Type 5の「ユーザー」ロールにコメントの公開権限を与える「ApproveCommentPermissionプラグイン」をバージョンアップしました。
1.変更点
既存の「ユーザー」ロールにはコメント編集画面から更新状態を変更できませんが、今回のバージョンアップで変更可能となる権限を付与しました。
プラグイン適用前

プラグイン適用後

ユーザーに更新状態を変更する権限を付与するには、「ユーザー(コメント公開つき)」といった新しいロールを作成してください。
2.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
ApproveCommentPermissionプラグイン
Movable Type 5の「ユーザー」ロールにコメントの公開権限を与えるプラグインを公開します。
1.機能
既存の「ユーザー」ロールにはコメントの公開を取り消す権限はありますが、保留中のコメント公開する権限がありません。
このプラグインを利用すれば、コメントを公開する権限を与えることができます。
プラグイン適用前

プラグイン適用後

なお、現在一覧画面からの公開のみ有効です。編集画面からの状態変更は別途機能追加したいと思います。コメント編集画面からの状態変更も可能です。
プラグイン適用前

プラグイン適用後

2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1000円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
以下のリンクからプラグインをダウンロードしてください。
2011.02.02 初版
2011.02.04 コメント編集画面からの更新状態変更を許容
4.プラグインのインストール
ダウンロードしたプラグインアーカイブを展開し、中にあるApproveCommentPermissionフォルダをpluginsフォルダにアップロードします。
システム管理画面のプラグイン一覧で、「ApproveCommentPermission~」が表示されればインストール完了です。

5.新しいロールの作成
プラグインをインストールすると「記事の公開(コメント公開つき)」という権限が新たに追加されます。この権限を利用して新しいロール「ユーザー(コメント公開つき)」などを作成してください。付与する権限は以下の4つです。
- 記事の公開(コメント公開つき)
- 通知の送信
- ファイルアップロード
- コメントの投稿
CustomFieldDataCheckerプラグイン
Movable Typeのカスタムフィールドで入力したデータの重複チェックを行う「CustomFieldDataCheckerプラグイン」を公開します。
1.機能
このプラグインでは、プラグイン設定画面で指定した特定のカスタムフィールドに入力した値をチェックし、他の記事の同一カスタムフィールドの値と重複している場合に以下のエラーを表示します。

v0.02ではブログ記事・ウェブページのカスタムフィールドのチェックを行います。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1000円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
以下のリンクからプラグインをダウンロードしてください。
2011.01.20 v0.01 初版
2011.03.31 v0.02 ブログ記事をチェック対象に追加/複数カスタムフィールドチェックに対応/エラーメッセージの改善
4.プラグインのインストール
ダウンロードしたプラグインアーカイブを展開し、中にあるCustomFieldDataCheckerフォルダをpluginsフォルダにアップロードします。
システム管理画面のプラグイン一覧で、「CustomFieldDataChecker~」が表示されればインストール完了です。

5.プラグインの設定
ブログ管理画面(システム管理画面ではありません)のプラグイン一覧で「CustomFieldDataChecker~」→「設定」をクリックして、重複チェックを行いたいカスタムフィールドのベースネームを入力してください。

複数のカスタムフィールドをチェック対象にするには、チェック対象にしたいカスタムフィールドのベースネームをカンマ区切りで設定してください。カンマの前後に半角スペースが含まれても問題ありません。

Movable Typeのカスタムフィールドを一覧に表示する「ListingCustomFieldプラグイン」
Movable Typeのカスタムフィールドで作成したデータを管理画面の一覧に表示する「ListingCustomFieldプラグイン」を公開します。
1.サンプル
とりあえずどのようなものか、プラグインで生成したデータを元に作った管理画面サンプルでご確認ください(ブラウザの横幅を少し広げた方が見やすくなります)。
一覧部分にカスタムフィールドの「テキスト」と「画像」が表示されています。画像をクリックすれば拡大表示されます。また、「表示オプション」をクリックすると、カスタムフィールドの「テキスト」「画像」のチェックボックスが表示されています。チェックボックスをチェックすればカスタムフィールドの表示・非表示を切り替えることができます。
※サンプルのため、上記以外の動作は行えません。
2.機能
このプラグインでは以下の一覧画面にカスタムフィールドを表示できます。
- ブログ記事
- ウェブページ
- アイテム
- コメント
- カテゴリ
- フォルダ
ほぼすべてのカスタムフィールドの種類に対応しています。表示できないカスタムフィールドは「埋め込みオブジェクト」のみです。
カスタムフィールドの種類で「画像」を表示した場合、サムネイルを表示します。また、jQuery-ligthboxを利用して元画像を拡大表示させることが可能です(現状ではブログ記事・ウェブページのみ)。カスタムフィールドの種類がアイテム・オーディオ・ビデオの場合はテキストリンクを表示します。
カスタムフィールドの表示・非表示はオプション画面に表示されたカスタムフィールド名をチェックすることで選択できます。チェックボックスはフィールドの追加・削除により自動的に増減します。選択した状態を保存することもできます。

カスタムフィールドを一覧に表示させたくないケースを考慮し、ブログ単位にカスタムフィールドの一覧表示要否を選択できるようにしています。
表示順序の入れ替えや表示幅の変更は行えません。
3.価格
- 5000円/1サーバ(評価版は無償で自由にご利用ください)
4.プラグインのダウンロード
評価版を以下のリンクからダウンロードできます。評価版では以下の操作を行えます。
- ブログ記事一覧画面へのカスタムフィールド表示
- 画像の表示は行えません(「表示」のリンクを表示します。画像表示の動作は冒頭のサンプルでご確認ください)
- カスタムフィールドの表示・非表示(保存は行えません)
ご購入いただける際はお問い合わせよりご連絡ください。その際、本格版のプラグインをお送りしますので動作確認してご購入を検討ください。
5.プラグインのインストール
ダウンロードしたプラグインアーカイブを展開し、中にあるListingCustomFieldフォルダをpluginsフォルダにアップロードします。
システム管理画面のプラグイン一覧で、「ListingCustomField~」が表示されればインストール完了です。

6.プラグインの設定
ブログ管理画面(システム管理画面ではありません)のプラグイン一覧で「ListingCustomField~」→「設定」をクリックして、カスタムフィールドを表示させたいオブジェクトをチェックして保存してください。評価版では「ブログ記事」のみ表示されます。
PublishButtonChangerプラグイン v0.02
Movable Type 5.0xのブログ記事投稿画面・ウェブページ作成画面の公開ボタンをクリックしたときにダイアログを表示したり、ボタンの色を変更して間違って公開しないようにするための「PublishButtonChangerプラグイン」をバージョンアップしました。
このプラグインは、次のように「公開」ボタンをグレーにして、さらに「公開」ボタンをクリックしたときに「記事を公開してもいいですか?」というダイアログを表示します。

1.変更点
「日時指定」のチェックボックスをチェックした状態で、
- 「保存」または「変更を保存」ボタンをグレーからブルーに変更
- 「保存」または「変更を保存」ボタンをクリックしたときに「記事を公開してもいいですか?」というダイアログが表示される不具合を修正
変更前1(「保存」ボタンがグレー)

変更前2(「保存」をクリックすると公開しない状態にもかかわらず不適切なダイアログが表示)

変更後(「保存」ボタンをブルーに変更し、「保存」をクリックしてもダイアログは表示されない)

2.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
AvailableWidgetSorter プラグイン v0.02
Movable Typeで、Movable Type 5のウィジェットセット編集画面にある右側の「利用可能」に表示されたウィジェットを並べ替える「AvailableWidgetSorter プラグイン」をバージョンアップしました。
1.変更点
プラグイン設定画面から、ウェブサイト・ブログ単位に並び替え順序が指定できるようにしました。

昇順で表示

降順で表示

2.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
Movable Typeで記事のプレビューが別ウィンドウで行えるプラグイン「PreviewTargetChanger」をバージョンアップ
Movable Typeで記事やテンプレートのプレビューが別ウィンドウで行えるプラグイン「PreviewTargetChanger」をバージョンアップしました。
1.変更点
v0.02では次の変更を行いました。今回の変更で実用に耐えられるプラグインに近づいたと思います。
- プレビュー後の「公開」ボタンや「下書き」ボタンが有効にならない不具合を修正
- プレビュー画面上部の「編集画面に戻る」のエリアを非表示に変更
- テンプレートのプレビューも別ウィンドウで確認可能
- ブログ別プラグイン設定画面から、プレビュー画面のターゲット(ウィンドウ/タブ)の選択が可能
2.制限事項
IEでは同一タブで開かない不具合が確認されています。また、Google Chromeでは初回のプレビューで再構築が実行される不具合が確認されています(下書きが公開になることはないので再プレビューで正常に表示されます)。
3.プラグインのダウンロード
PreviewTargetChangerプラグインは以下のリンクからダウンロードできます。
PreviewTargetChangerプラグイン
Movable Type 5のプレビューを別ウィンドウで開く「PreviewTargetChangerプラグイン」を公開します。
1.機能
デフォルトの動作では、ブログ記事編集画面で「プレビュー」をクリックすると、同一ウィンドウでプレビューされますが、修正するごとに画面を切り替えなければならず不便です。
このプラグインを利用すれば、プレビューを別ウィンドウに表示し、編集とプレビューを効率よく行うことができます。
注:現状ではプレビュー後の公開動作などを行うと、ウィンドウ(またはタブ)を一度閉じないとプレビューが正常に行えなくなる不具合がありますのでα版としてお試しください。v0.02で改善しました。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:3000円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
下記のリンクよりプラグインをダウンロードしてください。
2010.12.27 v0.01 初版
2010.12.28 v0.02 公開ボタンが有効にならない不具合等を修正
- PreviewTargetChanger_0_02.zip(MT5.0x用)
- PreviewTargetChanger_0_10.zip(MT5.1x用)
4.プラグインのインストール
プラグインアーカイブを展開し、中にある PreviewTargetChangerフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「PreviewTargetChanger~」が表示されればインストール完了です。

AuthorInformationEditControllerプラグイン
Movable Type でシステム権限のないユーザーが、ユーザー情報の「ユーザー名」「表示名」などのフィールドの変更を禁止するUserNameEditController プラグインをバージョンアップしてMT5に対応させました。プラグイン名も「AuthorInformationEditController」に変更しました。
1.機能
システム権限のないMTユーザーについて、ユーザー情報変更画面で「ユーザー名」の入力フィールドを disabled にします。

オプションによって「表示名」「電子メール」「ウェブサイトURL」の入力フィールドを disabled にすることができます。

また、各管理画面右上にあるユーザー情報へのリンク自体を無効にすることもできます。

4.AuthorInformationEditControllerプラグインのダウンロード
バージョンアップしたプラグインは、「UserNameEditControllerプラグイン」のページからダウンロードできます。
PublishButtonChangerプラグイン
Movable Type 5.0xのブログ記事投稿画面・ウェブページ作成画面の公開ボタンの動作を変更するPublishButtonChangerプラグインを公開します。
デフォルトでは「公開」ボタンの配色が青色になっているせいか、記事を下書き保存しようとして、うっかり「公開」ボタンをクリックしてしまうこともあるようです(私も何回かありました)。また、クリックした途端に記事が公開されてしまいます。
このプラグインではこれらのヒューマンエラーをなくすための機能をいくつか盛り込んでいます。私自身、このブログにプラグインを導入してから、そのようなエラーがなくなりました。
1.機能
ブログ記事・ウェブページ作成画面で青色の配色になっている「公開」ボタンの配色をグレーに変更し、「下書き保存」を青色に変更しています。公開後はデフォルトの配色になります。
プラグイン適用前

プラグイン適用後

また、ブログ記事・ウェブページ作成画面で次の動作を行う場合、確認のダイアログを表示します。「OK」をクリックすればクリックしたボタンの動作を継続し、「キャンセル」をクリックすれば中止します。
- 新規作成→「公開」をクリックしたとき
- 未公開(原稿)状態→「公開」をクリックしたとき
- 公開状態→「公開」をクリックしたとき
- 公開状態→「公開取り消し」をクリックしたとき
新規作成→「公開」をクリックしたとき/未公開(原稿)状態→「公開」をクリックしたときのダイアログ

公開状態→「公開」をクリックしたときのダイアログ

公開状態→「公開取り消し」をクリックしたときのダイアログ

ダイアログのメッセージを変更することも可能です。
さらに、「公開」ボタンや「公開取り消し」ボタンの背景色を変更することもでき、さらに注意を促すことができます。
「公開」ボタンの背景色を赤にした例

「公開取り消し」ボタンの背景色を赤にした例

2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:3000円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
以下のリンクよりPublishButtonChangerプラグインアーカイブをダウンロードします。
2010.12.13 v0.01 初版
2011.01.05 v0.02 日時指定時の動作を改善
2011.02.18 v0.03 typo修正
4.プラグインのインストール
プラグインアーカイブを展開し、pluginsフォルダ内にある PublishButtonChangerフォルダを、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
また、mt-static/pluginsフォルダ内にある PublishButtonChangerフォルダを、Movable Type のmt-static/pluginsディレクトリにアップロードします(5項の「背景色を赤にする」という機能を利用しない場合、この作業は不要です)。
システム管理画面のプラグイン一覧で、「PublishButtonChanger~」が表示されればインストール完了です。

これで冒頭の機能が動作することを確認してください。
5.プラグインの設定
ウェブサイトまたはブログ管理画面(システム管理画面ではありません)のプラグイン一覧にある「PublishButtonChanger~」をクリックし、さらに「設定」をクリックすれば、ダイアログのメッセージやボタンの背景色を変更できます。

サインイン時にダッシュボード以外の任意のページを開く「FirstAccsessURL」プラグイン
Movable Type のサインイン時にダッシュボード以外の任意の管理画面を開くFirstAccsessURLプラグインを紹介します。
1.機能
通常、Movable Typeのサインイン直後のページとしてダッシュボードが表示されますが、このプラグインを適用することで、任意の管理画面を開くことができます。
プラグイン適用後のサインイン直後の画面(ブログ記事一覧画面)
![]()
以下、プラグインの利用方法を紹介します。このプラグインはMT4/MT5で動作することを確認しています。
2.インストール
以下のページにあるソースをコピーして、FirstAccsessURL.plというファイル名(かつ文字エンコーディングはUTF-8で)保存し、pluginsディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「FirstAccsessURL~」が表示されればインストール完了です。

この状態で一旦サインアウトして、再度サインインしてみてください。デフォルト状態ではブログID1のブログ記事一覧画面が表示されるようになっています。
運用しているブログにブログID1のブログまたはウェブサイトがないと「エラーが発生しました: 不正な要求です。」と表示されるかもしれませんが、気にせず次の項目へ進んでください。
3.管理画面の指定方法
移動する管理画面を変更するには、プラグインのソースコード28行目の赤色部分を修正します。
my $FirstAccsessURL = MT->config->CGIPath . 'mt.cgi?__mode=list_entry&blog_id=1';
この部分の設定内容は、通常の管理画面動作で表示されるURLを設定します。例えばブログID2のアイテム一覧を表示させたい場合は、URLの末尾に
__mode=list_asset&blog_id=2
という文字列が表示されているはずなので、赤色部分をこの内容に置き換えます。
my $FirstAccsessURL = MT->config->CGIPath . 'mt.cgi?__mode=list_asset&blog_id=2';
複数ユーザーで管理しているブログでは、どのユーザーもすべて同じ画面が表示されます。ただし指定したページにアクセスする権限がないユーザーはサインインできなくなるので注意してください。
CharsetEncoder プラグイン v0.12
Movable Typeで、任意の文字エンコーディング(文字コード)のページを出力する「CharsetEncoder プラグイン」をバージョンアップしました。
1.変更点
文字エンコーディングからShift_JISを選択した場合、「~」などの文字が「?」に文字化けする不具合を対処しました。hinashikiさんからのコメントでこの不具合を知りました。この場をお借りしてお礼申し上げます。
対処前のShift_JISの表示

対処後のShift_JISの表示

文字化けをなくすための具体的な対処内容は、Shift_JISを選択した場合に「CP932」というエンコーディングを明示的に選択できるようにした点です。
プラグイン設定画面

テンプレート設定画面

CP932とは、MicrosoftによるShift_JISの独自拡張です。Windows環境で作成した記事をShift_JISで文字エンコーディングを行う場合は、このCP932による文字エンコーディングをチェックまたは選択してください。不要かもしれませんが、CP932の文字エンコーディングを行わないShift_JISも選択肢として残しています。
2.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
3.参考サイト
AvailableWidgetSorter プラグイン
Movable Type 5のウィジェットセット編集画面にある右側の「利用可能」に表示されたウィジェットを並べ替えるプラグインです。
MTQに5.1への要望としてあがってましたので、とりあえず5.0x版を作ってみました。
1.機能
このプラグインを適用することで、ウィジェットセット編集画面にある右側の「利用可能」に表示されたウィジェットを名前順に並べ替えられます。
ウィジェット一覧の「利用可能」の表示(プラグイン適用前)

ウィジェット一覧の「利用可能」の表示(プラグイン適用後)

2.プラグインのダウンロード
GithubのAvailableWidgetSorterプラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある AvailableWidgetSorterフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「AvailableWidgetSorter~」が表示されればインストール完了です。

降順・昇順の表示については次のバージョンで設定できるようにする予定です。
AssetExporter プラグイン v0.02
Movable Type(MT)5 でアイテムをテーマにエクスポートする「AssetExporterプラグイン」をバージョンアップしました。

このプラグインは、Movable Typeのウェブサイトまたはブログにアップロードした画像などのアイテムをテーマとしてエクスポートします。またエクスポートしたテーマに含まれるアイテムをインポートすることができます。
1.バージョンアップ内容
バージョンアップ内容は次の2点です。
- インポート時に元のディレクトリを再現
- ディレクトリの再現要否について選択可能
前バージョンでは、プラグイン開発時間の都合で、インポート時に一律「assets」というディレクトリ配下にアイテムをアップロードするようにしていましたが、今回のバージョンアップで、アイテム単位にエクスポート前のアイテムのディレクトリをインポートで利用できるようになりました。
元々ここまで作り込みたかったのですが、なかなか手がつけられず、ようやく完成にこぎつけました。これがこのプラグイン本来の機能となります。
ディレクトリを再現できることにより、前バージョンでは同一ファイル名のインポートを単純にスキップしていた機能を改善して、同一ファイル名のアイテムでも、ディレクトリが異っていればインポートできるように変更しました。
例えば、以下のようなディレクトリ構成であれば、同一ファイル名のアイテムのインポートが可能です。
images/
├ draft/
│ └ foo.jpg
└ publish/
└ foo.jpg
なお、ディレクトリを再現せず、「assets」ディレクトリ直下にインポートしたい場合は、今回追加したプラグイン設定画面のチェックボックスのチェックを外してください(下)。デフォルトはチェックされた状態になっています。
「assets」ディレクトリにアップロードする場合、元のディレクトリが異なっていても、同一ファイル名のアイテムはインポートをスキップします。
2.ダウンロード
バージョンアップしたプラグインは、github のAssetExporter プラグインのページからダウンロードできます。
利用方法については「AssetExporter プラグイン」のエントリーをご覧ください。
PowerEdit プラグインでカスタムフィールドを表示する(MT5:テキスト編)
Movable Type 5.0x のブログ記事一括編集画面に複数のフィールドを表示する PowerEdit プラグインをカスタマイズして、カスタムフィールドを表示する方法を紹介します。
以前、「PowerEdit プラグインでカスタムフィールドを表示する(テキスト編)」でMT4版でのカスタマイズ方法をエントリーしていましたが、MT5でプラグインの実装や代替テンプレートの記載内容が変わったため、改めてエントリー致します。
1.カスタムフィールドを作成する
次のような「テキスト」カスタムフィールドを作成します。

ベースネームはシステムで生成した「cf」という値を用います(ベースネームがプラグインカスタマイズのキモになります)。
以下、この設定を例に説明します。
2.entry_table.tmpl の編集
alt-tmpl/include/entry_table.tmpl の 245 行目あたりに青色のサブテンプレートを追加します。
...前略...
<mt:ignore>===================================</mt:ignore>
<mt:if name="is_power_edit">
<tr class="<mt:if name="__odd__">odd<mt:else>even</mt:if>">
<th><__trans phrase="Text"></th>
<td colspan="9"><textarea style="width:630px;height:200px" type="text" name="text_<$mt:var name="id"$>"><mt:PowerEditEntries class_type="$object_type" id="$id"><mt:entryBody no_asset_cleanup="1" convert_breaks="0" escape="html" /></mt:PowerEditEntries></textarea></td>
</tr>
<tr class="<mt:if name="__odd__">odd<mt:else>even</mt:if>">
<th><__trans phrase="Extended"></th>
<td colspan="9"><textarea style="width:630px;height:80px" type="text" name="text_more_<$mt:var name="id"$>"><mt:PowerEditEntries class_type="$object_type" id="$id"><mt:entryMore no_asset_cleanup="1" convert_breaks="0" escape="html" /></mt:PowerEditEntries></textarea></td>
</tr>
<mt:ignore>
<tr class="<mt:if name="__odd__">odd<mt:else>even</mt:if>">
<th><__trans phrase="Excerpt"></th>
<td colspan="9"><textarea style="width:630px;height:80px" type="text" name="excerpt_<$mt:var name="id"$>"><mt:PowerEditEntries class_type="$object_type" id="$id"><mt:entryExcerpt convert_breaks="0" no_generate="1" escape="html" /></mt:PowerEditEntries></textarea></td>
</tr>
</mt:ignore>
<tr class="<mt:if name="__odd__">odd<mt:else>even</mt:if>">
<th><__trans_section component="PowerEdit"><__trans phrase="EntryProductName"></__trans_section></th>
<td colspan="9"><input style="width:630px" type="text" name="customfield_cf_<$mt:var name="id"$>" value="<mt:PowerEditEntries class_type="$object_type" id="$id"><mt:EntryProductName /></mt:PowerEditEntries>" /></td>
</tr>
</mt:if>
...後略...
追加したタグの意味は次の通りです。
- <__trans phrase="EntryProductName">:見出しになります。phrase 属性の値はなんでもかまいません。見出しの日本語ローカライズを行なう場合は4項を参照してください。
- input 要素の name 属性:値に「customfield_cf_<$mt:var name="id"$>"」を設定します。「cf」の部分がベースネームに対応します。作成したカスタムフィールドのベースネームに適宜書き換えてください。その他の部分は固定です。
- input 要素の value 属性:カスタムフィールドのテンプレートタグ、MTEntryProductName タグを記述して、MTPowerEditEntriesタグで括ります。
3.CMS.pm の修正1
plugins/PowerEdit/lib/PowerEdit/CMS.pm の 5行目あたりに、青色のコードを追加します。
...前略...
package PowerEdit::CMS;
use strict;
use warnings;
use CustomFields::Util qw( save_meta );
sub _power_edit_entries {
...後略...
4.CMS.pm の修正2
plugins/PowerEdit/lib/PowerEdit/CMS.pm の 81 行目(save_power_edit 関数の中)あたりに、青色のコードを追加します。
...前略...
sub save_power_edit {
my ($cb, $app, $entry, $org) = @_;
my $q = $app->param;
my $id = $entry->id;
if ($id) {
...中略...
unless ($q->param('allow_pings')) {
if ($q->param('allow_pings_' . $id )) {
$entry->allow_pings(1);
} else {
$entry->allow_pings(0);
}
}
unless ($q->param('customfield_cf')) {
my $meta;
if ($q->param('customfield_cf_' . $id )) {
$meta->{cf} = $q->param('customfield_cf_' . $id );
} else {
$meta->{cf} = '';
}
&save_meta($entry, $meta);
}
}
return 1;
}
...後略...
赤色で示す部分がベースネームに対応します。ベースネームはご自身のカスタムフィールドのベースネームに適宜書き換えてください。
5.見出しのローカライズ
この作業は必須ではありませんが、見出しを日本語で表示したい場合、plugins/PowerEdit/config.yaml に、青色の1行を追加してください。
...前略...
l10n_lexicon:
ja:
Power Edit.: 拡張した一括編集画面の保存を有効にします。
Extended entry: 続き
EntryProductName: 商品名
...後略...
「EntryProductName」は、2項で追加したth要素にある、「phrase="EntryProductName"」に対応しています。英語表記を変更したい場合は、config.yamlのハッシュキー(EntryProductName)と「phrase="EntryProductName"」の2箇所を変更してください。
6.テキストのカスタムフィールドを複数表示する場合
2項と4項の内容を、必要なカスタムフィールド分、追加してください(ベースネームはそれぞれ異なります)。
PageExporter プラグイン v0.02
Movable Type(MT)5 でウェブページをテーマにエクスポートする「PageExporterプラグイン」をバージョンアップしました。
バージョンアップの理由は次のようなポストを頂いたためです。
同一ファイル名がインポートできない現象は、「WolaWola - バグらしきもののその後」で書かれている通り、MTの現状の仕様で、異なるフォルダであっても同一ファイル名のインポートを行うことができません。
そして、PageExporter プラグインのインポート機能も、MTのコア機能を利用しています(厳密にはプラグインに取り込んでいます)。プラグインはセミナー用に急いで作ったので、そのような細かい配慮が行えておりませんでした。
1.変更点
ということで、同一ファイル名に対応するよう変更しました。また、コードを読み直すとイケてない部分が何ヶ所かあったので、併せて修正しました。
まとめると以下の通りです。
- 同一ファイル名で異なるフォルダのエクスポート・インポートに対応
- MTに投稿されているウェブページがサブフォルダに属する場合、エクスポート時にトップフォルダ~サブフォルダを"/"で区切って出力し、インポート時のフォルダがない場合の生成に対応
- 同一ファイル名で同一フォルダ(またはルートフォルダ)のデータを除外する処理を追加
2.ダウンロード
バージョンアップしたプラグインは、github のPageExporter プラグインのページからダウンロードできます。
3.注意事項
今回の変更により、themes.yamlのフォーマットを一部変更しています。具体的には、旧バージョンではウェブページのidentifierにファイル名(赤色部分)を用いていましたが、バージョンアップ後はブログ記事ID(青色部分)を用いています。
変更前
author_link: ''
class: blog
description: ''
elements:
plugin_default_pages:
component: ~
data:
index:
title: test
…後略…
変更後
author_link: ''
class: blog
description: ''
elements:
plugin_default_pages:
component: ~
data:
100:
title: test
…後略…
手動でtheme.yamlを作成する場合、ブログ記事IDに該当する部分には、一意となる任意の数字を定義してください。重複している場合、どちらか一方しかインポートされません。
PageExporter プラグイン
Movable Type(MT)5 でウェブページをテーマにエクスポートする「PageExporterプラグイン」を公開します。
1.機能
Movable Type 5.02 時点でのエクスポート機能では、ウェブページをエクスポートすることができません(インポートは可能ですがtheme.yamlを編集する必要あり)。
このプラグインは、ウェブサイトまたはブログのウェブページをテーマにエクスポートします。もちろんエクスポートしたアイテムを編集なしでインポートすることもできます。

2.価格
MT5.1版(カスタムフィールド非対応版):無償
MT5.1版(カスタムフィールド対応版):3150円/1インストールMT(購入前に必ず動作確認してください)
商用以外でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
以下のPageExporter_0_10.zipまたはPageImExporter_0_30.zipをダウンロードしてください。
- PageExporter_0_10.zip
- PageImExporter_0_30.zip(カスタムフィールド対応版)
4.プラグインのインストール
プラグインアーカイブを展開し、中にある PageExporterフォルダ(またはPageImExporterフォルダ)ごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「PageExporter~」または「PageImExporter~」が表示されればインストール完了です。

5.利用方法
アイテムをエクスポートしたいウェブサイトまたはブログの「ツール」→「テーマのエクスポート」をクリックすると、「ウェブページ」のチェックボックスが表示されます(1件もない場合は表示されません)。

「詳細」をクリックすれば、オプション画面からエクスポートするウェブページを選択できます。
6.ウェブページアイテム・カスタムフィールドのエクスポートとインポート
カスタムフィールドやアイテムを含んだ具体的な移行手順については以下の記事を参照してください。
AssetExporter プラグイン
Movable Type(MT)5 でアイテムをテーマにエクスポートする「AssetExporterプラグイン」を公開します。
1.機能
Movable Type 5.12 時点でのエクスポート機能では、アイテムをエクスポートすることができません。また、インポートも行うことができません。
このプラグインは、ウェブサイトまたはブログのアイテムをテーマにエクスポートします。もちろんエクスポートしたアイテムをインポートすることもできます。

2.プラグインのダウンロード
MT5.1版は以下のリンクよりダウンロードしてください。
MT5.0版は、github のAssetExporter プラグインのページに移動します。
「Download Source」のリンクをクリックして、プラグインアーカイブをダウンロードします。

3.プラグインのインストール
プラグインアーカイブを展開し、中にある AssetExporter フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「AssetExporter~」が表示されればインストール完了です。

注:一番最初にリポジトリに登録したバージョンではLinuxでエラーとなるため、一部修正しました。
4.利用方法
アイテムをエクスポートしたいウェブサイトまたはブログの「ツール」→「テーマのエクスポート」をクリックすると、「アイテム」のチェックボックスが表示されます(1件もない場合は表示されません)。

「詳細」をクリックすれば、オプション画面からエクスポートするアイテムを選択できます。

5.注意事項
現状では、インポート時に一律「assets」というディレクトリを作り、そこに配置するだけの実装になっています(エクスポート対象のアイテムのディレクトリはどのように作ってあっても多分大丈夫)。エクスポート前のディレクトリを再現する機能については時間をみて別途検討したいと思います。
また、アイテム上にある、サムネイルファイルは、MTAssetThumbnailLinkタグなどで作成したものであれば、エクスポートは不要かもしれません。
PowerEdit プラグイン v0.12
公開中の「PowerEdit プラグイン」をMovable Type 5.0対応にバージョンアップしました。
1.変更点
公開状態を「下書き」で保存した場合に、ウェブページ・ブログ記事の「本文」「続き」「タグ」「キーワード」の内容が表示されない不具合を対処しました。
また、「本文」のテキストエリアの高さを拡大し、「タグ」「キーワード」「受信設定」を下に移動して、余裕のあるレイアウトにしました。記事のエリアを複数選択した場合、table要素を分割し、記事と記事の区切りが分かりやすくなるようにしました。
その他、プラグイン定義ファイルをPerlからYAMLに変更しました。
2.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。4項の「alt-tmpl.zip」と、5項の「PowerEdit.zip」の両方です。
BlogIDViewer プラグイン v0.10
現在配布中の、Movable Typeの管理画面にブログIDを表示する「BlogIDViewer プラグイン」をバージョンアップしました。
1.変更点
このプラグインはMT4対応のみでしたが、MT5の管理画面にも対応しました。次のように、各画面のウェブサイト名・ブログ名の左側にブログIDを表示します。
ウェブサイト・ブログの表示

ウェブサイト・ブログ選択メニュー

ブログ一覧画面

ウェブサイト一覧画面

2.プラグインのダウンロード
最新版のプラグインは下記のページよりダウンロードできます。
ThemeConfirmerプラグイン
Movable Type 5でテーマを切り替えるときに確認のダイアログを表示する「ThemeConfirmerプラグイン」を公開します。
oscarさんの「MT5.1 の要望が始まってるようですが」の記事の中にある一文を読んで思いついて作りました。
「MT underHat テーマ - チワーマ - MT underHat」を見てて「テーマは適用ボタンを押すと何のアラートも無しに適用されてしまう」の記述について気になりました。確かにテーマの適用について、確認ダイアログの表示があっても良いのではないかと。
ちなみに、うっかり適用してしまっても、適用前のテーマは自動的にバックアップされています。
1.機能
テーマの「適用」をクリックしたときに、確認のダイアログを表示します。ダイアログにはテーマ名を表示します。
2.プラグインのダウンロード
下記の ThemeConfirmer_0_01.zip をクリックして、プラグインアーカイブをダウンロードします。
2010.06.21 初版
3.プラグインのインストール
プラグインアーカイブを展開し、中にある ThemeConfirmer フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「ThemeConfirmer~」が表示されればインストール完了です。

4.ダイアログメッセージの設定
ダイアログメッセージは変更することができます。メッセージを変更するには、ウェブサイト管理画面またはブログ管理画面の「ツール」→「プラグイン」→「ThemeConfirmer~」をクリックし、メッセージを設定して「変更を保存」をクリックします。

PowerEdit プラグイン v0.11
公開中の「PowerEdit プラグイン」のMovable Type 5での利用について、「エラーが発生する」という、3zonoさんのつぶやきがありましたので、代替テンプレートをバージョンアップしました。ご指摘ありがとうございました。
1.問題点
プラグインを適用すると、一括編集時に以下のテンプレートタグで次のようなコンテキストエラーが発生する。

エラー発生対象のテンプレートタグは次の3つのようです。
- MTEntryKeywords
- MTEntryBody
- MTEntryMore
2.対策
注:公開状態を「下書き」で保存すると、ブログ記事の内容が消えてしまう事象が確認されましたので、ご利用にあたってはご注意ください。 本不具合はバージョン0.12で対処しました。
上記の3つのテンプレートタグをMTEntriesタグ(idモディファイアつき)で括ることで解消します。広範囲をMTEntriesタグでくくるとブログ記事一覧画面の公開状態などが適正に表示されないようなので、手修正する場合、次のように、該当のテンプレートタグをピンポイントで狙って括ってください。
変更前の代替テンプレート(抜粋)
<td><input style="width:60px" type="text" name="keywords_<$mt:var name="id"$>" value="<mt:entryKeywords />" /></td>
変更後の代替テンプレート
<td><input style="width:60px" type="text" name="keywords_<$mt:var name="id"$>" value="<mt:Entries id="$id"><mt:entryKeywords /></mt:Entries>" /></td>
最新版のプラグインは下記のページよりダウンロードできます。
2010.07.01
タイトルのバージョン表記が誤っていたので、「v0.20」から「v0.11」に変更しました。
EntryIDViewer プラグインでIDの折り返しを解消する
当サイトで配布中のEntryIDViewer プラグインは、ブログ記事のID番号を一覧に表示するものです。

ただし、IDが4桁になると、次のように折り返しが発生してしまいます。

本エントリーでは、次のようにテーブルの幅を広げるカスタマイズを紹介します。

1.CMSHeadプラグインのインストール
CMSHeadプラグインをインストールします。
2.スタイルの設定
CMSHeadプラグイン設定画面に以下の内容を記載すれば、折り返しがなくなります。
<style type="text/css">
.listing .view {
width:5em;
}
</style>
PowerEdit プラグイン v0.10
公開中の「PowerEdit プラグイン」をMovable Type 5.0対応にバージョンアップしました。
それっぽく表示できていますが、各フィールドの幅は適宜調整してください。
最新版のプラグインは下記のページよりダウンロードできます。
バージョン4版から入れ替える場合は、5項の「alt-tmpl.zip」のみを入れ替えてください。
DefaultValueSetter プラグイン v0.10(Movable Type 5.0対応)
ブログ記事の入力フィールドに初期値を設定する DefaultValueSetter プラグインを Movable Type 5.0 用にバージョンアップしました。
このプラグインを利用すれば、ブログのブログ記事やウェブページの新規作成時に、
- タイトル
- 本文
- 追記
- タグ
- 概要
- キーワード
の各フィールドに任意の文字列を初期値として表示することができます。
1.ダウンロード
以下のページからダウンロードしてください。
2.使用方法
ブログ管理画面の「ツール」→「プラグイン」で「DefaultValueSetter ~」をクリックし、さらに「設定」をクリックすると次のような設定画面が表示されるので、任意の値を設定し、「変更を保存」をクリックします。
これで、ブログやウェブページの新規作成画面を開いたときに、設定した内容が反映されます。
TableSelectEnabler プラグイン
Movable Type 5.0 のブログ・ウェブページ・コメントの各一覧画面から、ブログ・ウェブページ・コメントを選択しやすくするプラグインです。
例えば、ブログ記事の一括編集をする場合、Movable Type 4.x では、ブログ記事一覧から編集したいブログ記事を選択できる範囲が広かった(該当のブログ記事の枠のどの部分をクリックしても選択可)のですが、Movable Type 5.0 の管理画面ではチェックボックスを狙わないとチェックできないようになっています。
Movable Type 4.261のブログ記事一覧画面(マウスがある部分をクリックすると選択状態になる)

Movable Type 5.0のブログ記事一覧画面(マウスがある部分をクリックしても選択状態にならない)

なお、ここで挙げている以外の画面ではMT4並みの選択ができるようになっているので、単に設定もれなのかもしれません。
1.機能
このプラグインは次の機能を提供します。
- ブログ記事・ウェブページ・コメントの各一覧画面から、ブログ記事・ウェブページ・コメントのチェックをつける選択範囲を拡張します。
2.プラグインのダウンロード
下記のリンクからプラグインアーカイブをダウンロードし、任意のフォルダに保存してください。
修正履歴
2009.12.10 初版
プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.インストール
プラグインアーカイブを解凍し、中にある TableSelectEnabler フォルダを plugins ディレクトリにアップロードしてください。
ブログ管理画面より「システム」→「プラグイン」でプラグイン一覧を表示し、次のように表示されればOKです。

ImageSizeGenerator プラグイン v1.00
先日公開した、Movable Type のブログ記事内の img 要素に width 属性・height 属性を追加する「ImageSizeGenerator プラグイン」をバージョンアップしました。
このバージョンアップでは、Technology on Information の天野さんに変換部分のソースコードを提供していただきました。ありがとうございました。
1.変更内容
- img 要素が1行に複数ある場合や、img 要素の途中に改行がある場合の width 属性・height 属性の追加に対応
- 追記フィールドのimg 要素の変換にi対応
2.ダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
ImageSizeGenerator プラグイン v0.04
先日公開した、Movable Type のブログ記事内の img 要素に width 属性・height 属性を追加する「ImageSizeGenerator プラグイン」をバージョンアップしました。
この不具合と改善案は WolaWola のoscar さんにご連絡いただきました。ありがとうございました。
1.変更内容
- img 要素の後方に br 要素などの空要素がある場合、空要素に width 属性・height 属性が追加される不具合を修正
2.ダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
ImageSizeGenerator プラグイン v0.03
先日公開した、Movable Type のブログ記事内の img 要素に width 属性・height 属性を追加する「ImageSizeGenerator プラグイン」をバージョンアップしました。
1.変更内容
- src 属性で指定した画像が見つからない場合に、空の width 属性・height 属性が追加される不具合を修正
- プラグインファイルをYAMLに変更
2.ダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
EntryIDViewer プラグイン
Movable Type 5 で、ブログ記事IDを管理画面に表示するプラグインです。
1.機能
ブログ記事一覧・ウェブページ一覧にブログ記事IDを表示します。注:MT5.1以降の一覧画面ではデフォルト機能でIDを表示することができます。

また、ブログ記事編集画面・ウェブページ編集画面にブログ記事IDを表示します。

2.プラグインのダウンロード
下記の EntryIDViewer.zip をクリックして、プラグインアーカイブをダウンロード。
変更履歴
2009.11.18 初版
2011.07.05 v0.10 MT5.1対応
2011.12.04 v0.11 MT5.1版にウェブサイト/ブログ別の有効機能追加
- EntryIDViewer_0_01.zip(MT5.0x用)
- EntryIDViewer_0_11.zip(MT5.1用)
プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある EntryIDViewer フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロード。
システム管理画面のプラグイン一覧で、「EntryIDViewer~」が表示されればインストール完了です。

MT5.1版は、プラグインを利用したいウェブサイト/ブログの「ツール」→「プラグイン」→「EntryIDViewer~」→「設定」で、「プラグインを有効にする」にチェックしてください。

これで設定は完了です。冒頭のようにブログ記事IDが表示されていることを確認してください。
2011.07.04
対応バージョンを追加しました。
CKEditor for Movable Type 5.0
「世界中の1%の人々へ」の蒲生さんと「ToI企画」の天野さんの共同プロジェクトによる、CKEditor for Movable Type プラグインが公開されています。

以下、「【Movable Type 5.0】AjaxなWYSIWYGエディタCKEditor for MT公開」の記事からの引用でプラグインを紹介します。
このプラグインはFCKEditorの後継 WYSIWYG エディタ「CKEditor」を日本語ローカライズ化してMovable Type 5.0で利用できるようにしたものです。
CKEditor for MTには、以下の特徴があります。
- 出力コードが正確
- 動作が軽快
- 機能が豊富
- 使いやすい
- カスタマイズが簡単
CKEditorはFCKeditorの使いやすさと、TinyMCEの持つ拡張性を備えており、どちらのWYSIWYGエディタよりも素晴らしい、WYSIWYGエディタの決定打といえるでしょう。
1.プラグインのダウンロード
以下のページよりアーカイブをダウンロードします。
github.com/usualoma/ckeditor-for-mt/downloads

2.プラグインのインストール
アーカイブを展開して、plugins 配下にある CKEditor フォルダを plugins ディレクトリに、mt-static/plugins 中にある CKEditor フォルダを mt-static/plugins ディレクトリにアップロードします。
システムプラグイン一覧で「CKEditor for Movable Type x.x」が表示されればインストール完了です。

3.設定
プラグインをインストールした時点で冒頭のような編集画面が表示されますが、システムプラグインの設定画面で以下のような、表示するボタンの設定や選択可能なフォントサイズなどの設定項目があります。

また、ブログ別(またはウェブサイト別)プラグイン一覧画面から、概要フィールドへの適用の設定が行なえます。

ImageSizeGenerator プラグイン
Movable Type のブログ記事投稿時、本文に記述した img 要素に対し、width 属性と height 属性を自動的に付与するプラグインです。MT のアイテム機能を使わずに画像を挿入している場合などに有効です。
この記事の img 要素にも本プラグインを適用して、width 属性・height 属性を自動挿入しています。
1.機能
このプラグインは次の機能を提供します。
- ブログ記事の本文に挿入した img 要素に width 要素および height 要素を含まない場合、ブログ記事の保存時に画像サイズを取得し、width 属性と height 属性を自動的に付与します。
- width 要素または height 要素のいずれかが設定されている場合は動作しません。
- img 要素に他の属性が設定されている場合、そのまま反映します。
ブログ記事保存前

ブログ記事保存後

なお、本プラグインは Perl モジュール LWP::Simple を使用しています。
2.プラグインのダウンロード
下記のリンクからプラグインアーカイブをダウンロードし、任意のフォルダに保存してください。
修正履歴
2009.11.11 初版
2009.11.18 v0.02 ドキュメントのリンクを修正
2009.11.23 v0.03 src 属性で指定した画像が見つからない場合に空の width 属性・height 属性が追加される不具合を修正。YAML対応
2009.11.30 v0.04 img 要素の後方に br 要素などの空要素がある場合、空要素に width 属性・height 属性が追加される不具合を修正
2009.12.04 v1.00 img 要素が1行に複数ある場合や、img 要素の途中に改行がある場合の width 属性・height 属性の追加に対応。追記フィールドのimg 要素の変換にi対応
プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.インストール
プラグインアーカイブを解凍し、中にある ImageSizeGenerator フォルダを plugins ディレクトリにアップロードしてください。
ブログ管理画面より「システム」→「プラグイン」でプラグイン一覧を表示し、次のように表示されればOKです。

4.注意事項
リンク付きの img 要素も変換されることを確認していますが、1行に複雑な(X)HTMLマークアップが記述されている場合の動作は保証できません。v1.00で対応しました。
また、img 要素が1行に連続している場合、正常に変換されない可能性があります。プラグインは1行にひとつの img 要素しか処理しないので、可能であれば改行を挿入してください。v1.00で対応しました。
DirectiveViewer プラグイン v0.02
先日公開した、Movable Type の環境変数を参照する「DirectiveViewer プラグイン」をバージョンアップしました。
1.変更内容
- Movable Type 4.x に対応(MT5にバージョンアップしてもプラグインを入れ替える必要はありません)
2.MovableType 4.x での利用方法
Movable Type 4.x のシステム管理画面の「ツール」→「環境変数」をクリックします。

このように環境変数が表示されます。

なお、動作確認バージョンは 4.1 および 4.261 です。4.0x での動作は未確認です。
2.ダウンロード
最新版のプラグインは下記のページよりダウンロードしてください。
DirectiveViewer プラグイン
Movable Type の管理画面から環境変数の設定状況を参照できるプラグインを公開します。
このプラグインを利用すれば、次のように、管理画面に環境変数の一覧を表示できます。

1.環境変数について
Movable Type の環境変数は、システム全体の動作を定義するものです。例えば、インストール時には CGIPath が環境設定ファイル mt-config.cgi に設定されます。また、インストール後に mt-config.cgi を編集して、任意の環境変数を設定することで、動作を変更することができます。
mt-config.cgi に設定されていない環境変数については、システム内部でデフォルト値が定義されているものもあります。
2.プラグインの機能
このプラグインは以下の機能があります。
- 環境変数名(ディレクティブ)とその値を表示します。
- システム管理者権限でログインした場合のみ表示されます。
なお、環境変数は手作業で収集したので、不足しているものがあるかもしれません。また、PluginSchemaVersion のように、プラグイン名の指定が必要なものは対象外にしています。
本プラグインは Movable Type 4.x/5.x で動作します。4.x については現在確認中です。
3.プラグインのダウンロード
下記のリンクからプラグインアーカイブをダウンロードし、任意のフォルダに保存してください。
変更履歴
2009.09.18 初版
2009.09.25 v0.02 Movable Type 4.x に対応
プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
4.インストール
プラグインアーカイブを解凍し、中にある DirectiveViewer フォルダを plugins ディレクトリにアップロードしてください。
ブログ管理画面より「システム」→「プラグイン」でプラグイン一覧を表示し、次のように表示されればOKです。

5.表示方法
システム管理者権限でログインし、システム管理画面の「ツール」→「環境変数」をクリックします。Movable Type 5.x であれば、メニューの一番下に表示されます(下)。






