Movable Typeのプラグインをまとめて有効・無効にできる「MultiPluginSwitcherプラグイン」
Movable Typeのプラグインをまとめて有効・無効にできる「MultiPluginSwitcherプラグイン」を公開します。
1.背景
デフォルトのプラグイン設定画面(システム管理画面)では、プラグインを有効・無効にする機能として、
- 個別指定
- 一括指定
の2種類が用意されています(下)。
一括指定のボタン

ただし、複数のプラグインを選択してまとめて有効・無効にするという機能はありません。
私のMT実験環境には色々なプラグインをインストールしており、プラグイン開発中に他のプラグインを無効にして該当のプラグインのみ動作確認したいケースがあります。
1つずつ無効にするのは時間がかかって結構面倒なので、FTPツールでconfing.yamlをリネームして無効化していました。が、それもかなり非効率で、「一発で複数のプラグインを無効化できるようにしたい」というのがそもそもの発端です。
それ以外にも、インストールしたプラグインが動作しないといった場合、他のプラグインを無効にして切り分けを行うといった用途でも使えると思います。
2.機能
MultiPluginSwitcherプラグインは、複数のプラグインを選択して有効または無効にすることができます。
本プラグインをインストールすると、プラグイン設定画面の一覧にチェックボックスと「無効」「有効」のボタンが表示されます。チェックボックスをチェックして「無効」または「有効」をクリックすれば、チェックしたプラグインの無効化または有効化を一括で行えます。
無効にしたいプラグインをチェックして「無効」をクリック

チェックしたプラグインをまとめて無効化

その他、細かい機能として、「無効」「有効」をクリックしたときには確認ダイアログを表示します。また、チェックされていない状態で「無効」「有効」をクリックすれば「選択されていません」というアラートを表示します。
3.プラグインのダウンロード・インストール
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にあるMultiPluginSwitcherフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「MultiPluginSwitcher~」が表示されればインストール完了です。

4.注意事項
MultiPluginSwitcherプラグインを無効にすると、当然ですがプラグイン設定画面にチェックボックスや「無効」「有効」ボタンが表示されなくなります。
MultiPluginSwitcherプラグインを無効にしたところ

その際はMultiPluginSwitcherプラグインのみ有効にすれば元に戻ります。
Movable Typeの記事編集画面に登録アイテムを表示する「ShowAssetImage」プラグイン
Movable Typeの記事編集画面に登録アイテムを表示する「ShowAssetImage」プラグインを公開します。
1.機能
ブログ記事・ウェブページ編集画面の右下にある「アイテム」エリアで画像を登録した場合、保存後はファイル名にカーソルをあてないと画像が表示されませんが、プラグイン適用後は画像をダイレクトに表示します(保存後のみ)。
プラグイン適用前

プラグイン適用前(ファイル名にカーソルをあてたところ)

プラグイン適用後

2.プラグインのダウンロード・インストール
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にあるShowAssetImageフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「ShowAssetImage~」が表示されればインストール完了です。
10分くらいで作ったので表示がいまひとつですいません。今後は表示する画像のサイズも(可能であれば)設定可能なようにしたいと思います。
2011年作成のMovable Type(MT)プラグイン一覧
2011年に当ブログで公開したMovable Typeプラグイン一覧です。
用途別+アルファベット順に並べています。2011年に作成したプラグインは合計36と、過去最多となりました。
1.一覧画面関連のプラグイン
AddCFQuickFilterプラグイン
ブログ記事一覧などのリスト画面をカスタムフィールドの値で絞り込めるようにします。MT5.0x専用です。ListingCustomFieldプラグインと組み合わせれば強力です。

AssetFolderViewerプラグイン
アイテム一覧にフォルダを表示します。MT5.0x専用です。
![]()
EntryAssetListingプラグイン
記事一覧画面にアイテムを表示します。MT5.1x専用です。
LimitPerPageChangerプラグイン
管理画面の一覧表示で任意の表示件数を指定できるようにします。MT5.0x専用です。
プラグイン適用後(「表示数」に任意の数値を入力可能)

ListingCustomFieldプラグイン
カスタムフィールドで作成したデータを管理画面の一覧に表示します。表示項目はチェックボックスで増減可能です。MT5.0x専用です。
![]()
ListingFieldEditorプラグイン
カスタムフィールドを一覧画面で編集できるようにします。MT5.1x専用です。
SearchResultsCFListingプラグイン
管理画面の検索結果一覧の表示項目を追加します。
プラグイン適用後の検索結果画面(タグ・カスタムフィールドを表示)
![]()
2.再構築関連のプラグイン
RebuildByChangeWidgetプラグイン
ウィジェットセット更新時にインデックステンプレートを再構築します。

RebuildByUpdateAssetプラグイン
アイテム更新時に、該当アイテムを利用しているブログ記事ページ・ウェブページを再構築します。MT5.x用です。
RebuildEntryByIdプラグイン
ブログ記事保存時に別のブログ記事を再構築します。

3.アイテム関連のプラグイン
DeleteAssetWithDeleteCFAssetプラグイン
アイテムのカスタムフィールド削除に連動して、ウェブページやブログ記事の「関連アイテム」も同時に削除します。
カスタムフィールドの「画像を削除する」をクリックすると

該当の画像をブログ記事アイテムから削除

ImageSizeModifierプラグイン
携帯サイト向けに画像を縮小します。MT4.x/MT5.0x/MT5.1xに対応します。
RevisableAssetプラグイン
ブログ記事・ウェブページに関連づけたアイテムをリビジョン対象にできるようにします。

UploadImageResizerプラグイン
画像アップロード時にリサイズを可能にします。

4.カテゴリ関連のプラグイン
AllCategorySelectorプラグイン
記事編集画面でカテゴリを一括選択できるようにします。

CategorySelectorFilterプラグイン
選択できるカテゴリを限定します。
選択後の状態(選択したカテゴリ以外のカテゴリのチェックボックスはdisable)

ParentCategorySelectorプラグイン
記事編集画面で親カテゴリを一括選択できるようにします。

5.コメント関連のプラグイン
ApproveCommentPermissionプラグイン
「ユーザー」のロールにコメント公開権限を与えることができます。
プラグイン適用後(「公開」ボタンを表示)

CommentEmailByteChangerプラグイン
投稿コメントのメールアドレスを半角に変換します。
投稿時のメールアドレス(全角)

投稿後のメールアドレス(半角に変換)

CustomizedCommentfilterプラグイン
指定文字列を含むコメントを受け付けません。

6.記事編集画面関連のプラグイン
BodyFieldCustomizerプラグイン
記事作成編集画面の本文・追記フィールドの動作をカスタマイズできるようにします。MT5.1x専用です。
プラグイン適用後かつ本文・追記フィールドを非表示にしたところ

BodyFieldEraserプラグイン
記事作成編集画面の本文・追記フィールドを非表示にします。MT5.0x専用です。
![]()
PublishButtonChangerプラグイン
Movable Type 5.1のブログ記事投稿画面・ウェブページ作成画面の公開ボタンの動作を変更します。例えば記事公開時に確認ダイアログを表示します。

TextareaTabEnablerプラグイン
テンプレート編集画面でタブ文字が入力できるようにします。
タブ文字挿入後のカーソル位置

7.その他管理画面関連のプラグイン
AssociationBlogDiscriminatorプラグイン
ブログ権限付与時に親ウェブサイト名を表示します。

CustomFieldDataCheckerプラグイン
カスタムフィールドで入力したデータの重複チェックを行えるようにします。

EmulateIEプラグイン
IE9でMT4/MT5.0x/MT5.1xの管理画面を操作できるようにします。
EntryExporterプラグイン
テーマ機能を使って、ブログ記事(アイテム・カスタムフィールド含む)のインポート・エクスポートを行えるようにします。

Linklistプラグイン
お気に入りリストが作れるプラグインです。

ReturnArgsChangerプラグイン
ブログ記事・ウェブページ削除後の遷移画面を指定できます。本番環境でいわゆる「ゴミ」を残したくない場合などに利用できます。

RevisionRemoverプラグイン
記事更新履歴をクリアします。

UserEmailCheckerプラグイン
管理画面からのユーザー登録時やコミュニティ機能を使ったユーザー登録時に、同一メールアドレスのユーザー有無をチェックします。

8.拡張テンプレートタグ
CommentAuthorIdentityプラグイン
MTCommentAuthorIdentityタグ(認証サービスに登録しているプロフィール・ページへのリンクを表示する)の改良版プラグインです。
CurrentStyleプラグイン
テンプレートに適用しているスタイルとレイアウトを表示するためのMTCurrentStyleタグとMTCurrentLayoutタグを提供します。
EntryAuthorDataプラグイン
ブログ記事投稿ユーザーの情報を出力するためのMTEntryAuthorDataブロックタグを提供します。
MondayCalendarプラグイン
カレンダーを月曜日始まりにするためのMTMondayCalendarブロックタグを提供します。

Movable Type5.1で管理画面の検索結果にカスタムフィールドを表示する「SearchResultsCFListingプラグイン」
Movable Type5.1で管理画面の検索結果の表示項目を追加する「SearchResultsCFListingプラグイン」を公開します。
1.機能
管理画面のブログ記事検索結果項目に、カスタムフィールドおよびキーワード・タグを表示します。
プラグイン適用後の検索結果画面(タグ・カスタムフィールドを表示)
![]()
このプラグインはMT5.12で動作確認しています。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、pluginsディレクトリにあるSearchResultsCFListingフォルダごと、Movable Typeのアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面の「ツール」→「プラグイン」をクリックし、プラグイン設定画面で「SearchResultsCFListing~」が表示されればインストール完了です。

4.プラグインの設定
ブログの「ツール」→「プラグイン」→「SearchResultsCFListing~」→「設定」をクリックして、必要な項目をチェックしてください。

5.注意事項
カスタムフィールドを表示する場合、登録しているカスタムフィールド(画像/アイテム/オーディオ/ビデオを除く)がすべて表示されます。
また、プラグインを有効にした場合、表示項目が多くなったときに「ブログ記事の編集」というテキストリンクのスタイルが崩れるのを防ぐため、「ブログ記事の編集」のテキストリンクは80px固定表示になります。
Movable Type5.0のリスト画面をカスタムフィールドの値で絞り込める「AddCFQuickFilterプラグイン」
Movable Type5.0のブログ記事一覧などのリスト画面をカスタムフィールドの値で絞り込める「AddCFQuickFilterプラグイン」を公開します。
1.機能
Movable Type5.0の記事一覧画面の「絞込み」に、カスタムフィールドの項目を表示します。

表示するタイプは「テキスト」「ラジオボタン」「セレクトボックス」の3種類です。「テキスト」の場合は、条件を入力するテキストフィールドを表示します。

「ラジオボタン」「セレクトボックス」の場合はオプションを表示します。

こんな感じで絞り込めます。

動作確認はMT5.06で行っています。今のところMT5.06以下のバージョンでは動作保障していませんので注意してください。
2.価格
- 非商用利用:無償
- 商用利用:1050円/1サーバ(購入前に必ず動作確認してください)
非商用利用でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、pluginsディレクトリにあるAddCFQuickFilterフォルダごと、Movable Typeのアプリケーションディレクトリのpluginsディレクトリにアップロードします。
また、プラグインファイルに含まれるlib/MT/CMS/Entry.pmを、Movable Typeのアプリケーションディレクトリのlib/MT/CMS/Entry.pmと差し替えてください(元のEntry.pmはリネームして必ず保存してください)。
システム管理画面のプラグイン設定画面で、「AddCFQuickFilter~」が表示されればインストール完了です。

Entry.pmは740~750行目に該当の処理を追加しています。既存の処理を使えそうなのですが、正常な動作確認が行えていないため、このような方式にさせて頂いてます。
Movable Typeでブログ記事投稿ユーザーの情報を取得するEntryAuthorDataプラグイン
Movable Typeでブログ記事投稿ユーザーの情報を出力するための「EntryAuthorDataプラグイン」を公開します。
1.機能
このプラグインは、ブログ記事に投稿したユーザー情報を取得するためのMTEntryAuthorDataブロックタグを提供します。
例えば、次のようにMTEntriesタグを使ったブログ記事コンテキストやブログ記事ページの中でMTEntryAuthorDataタグを記述します。MTEntryAuthorDataタグブロック内ではMTAuthorxxファンクションタグを使ってブログ記事投稿者の情報を取得することができます。
<mt:Entries>
<mt:EntryAuthorData>
<$mt:AuthorBasename$>
</mt:EntryAuthorData>
</mt:Entries>
なお、デフォルト機能を使った次のサブテンプレートでも同様の機能が実現可能ですが、直感的に使えるようなテンプレートタグという意味で作ってみました。
<mt:Entries>
<$mt:EntryAuthorDisplayName setvar="name"$>
<mt:Authors display_name="$name">
<$mt:AuthorBasename$>
</mt:Authors>
</mt:Entries>
このプラグインは以下のMTQフォーラムの質問・回答より着想を得たものです。
本当はMTEntryAuthorというブロックタグ名が適切なのですが、デフォルトで同名のファンクションタグが存在するため、MTEntryAuthorDataとしました。
2.プラグインのダウンロード
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
修正履歴
2011/12/02 初版
プラグインアーカイブを展開し、中にあるEntryAuthorDataフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「EntryAuthorData~」が表示されればインストール完了です。

Movable Typeの画像アップロード時にリサイズできる「UploadImageResizerプラグイン」
Movable Typeの画像アップロード時にリサイズ可能な「UploadImageResizerプラグイン」を公開します。
1.機能
アイテムのアップロード画面で画像をアップロードする際、「アップロード画像オプション」をチェックします。

チェックすると、アップロード画像をリサイズするためのオプションが表示されます。各フィールドに値を設定してアップロードすれば、指定したサイズでアップロードされます。

このプラグインは、アップロード後の画像をリサイズするのではなく、アップロード時にサイズ指定するものです。アップロード後に画像をチェックしながらリサイズしたい場合は、インターネットに接続された環境であれば「Pixenateプラグイン」を推奨します。
また、UploadImageResizerプラグインは画像の拡大は行えません。また現在のバージョンでは上書きアップロードにも対応していません(上書きアップロードは別途対応予定)。
動作はMT5.12で確認しています。
2.アップロード画像サンプル
下のスクリーンショットは元画像(640×425)をそのままアップロードしたアイテム編集画面に表示された画像です。

幅300px・高さ200pxにリサイズしてアップロードしたものです。画像の幅・高さとサイズが変更されます。

幅200pxを指定+アスペクト比を保持してアップロードしたものです。指定した幅
にあわせて高さが自動調整されます。

150pxのサムネイル(四角)作成したものです。

3.価格
- 非商用利用:無償
- 商用利用:1050円/1サーバ(購入前に必ず動作確認してください)
非商用利用でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
4.プラグインのダウンロード
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
修正履歴
2011/11/16 初版
2011/11/16 v0.02 MT5.0x対応
プラグインアーカイブを展開し、中にあるUploadImageResizerフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「UploadImageResizer~」が表示されればインストール完了です。

5.注意事項
下記の条件でアップロードすると、元画像をそのままアップロードします。
- 「アップロード画像オプション」をチェックしていない
- 幅・高さの指定がない
- 幅・高さのいずれかの指定サイズが元画像のサイズを超えている
- ラジオボタンのいずれも選択されていない
Movable Typeで選択したカテゴリの親カテゴリを一括選択できる「ParentCategorySelectorプラグイン」
Movable Typeで親カテゴリを一括選択できる「ParentCategorySelectorプラグイン」を公開します。
1.機能
ブログ記事投稿画面のカテゴリ選択で、チェックしたカテゴリの親カテゴリを選択します。
次のようにチェックボックスの上でチェックします。

チェックすると、親カテゴリまでまとめて選択されます。

チェックした子カテゴリのチェックをはずせば、親カテゴリの選択も解除します。親カテゴリが選択されたあと、個別にチェックをはずすことも可能です。チェックボックスでない部分(カテゴリ名など)をチェックすれば子カテゴリだけを選択することもできます。
また、プラグイン設定画面で、次のようにチェックしたカテゴリを主カテゴリにすることもできます。デフォルトの動作は最上位の親カテゴリが主カテゴリになります。

このプラグインはMT5.12で動作します。ブラウザはFirefox8のみ正常に動作することを確認しています(v0.01では他のブラウザでは動作しません)。
2.価格
- 非商用利用:無償
- 商用利用:1050円/1サーバ(購入前に必ず動作確認してください)
非商用利用でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にあるParentCategorySelectorフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「ParentCategorySelector~」が表示されればインストール完了です。

4.プラグインの設定
プラグインを利用したいブログの管理画面で「ツール」→「プラグイン」→「ParentCategorySelector~」→「設定」をクリックして、「このプラグインを有効にする」をチェックして「変更を保存」をクリックします。この操作を行わないと親カテゴリまで含んだ選択は行われないので注意してください。

主カテゴリをチェックしたカテゴリにしたい場合は、「チェックしたカテゴリを主カテゴリにする」をチェックしてください。デフォルト動作は、最上位の親カテゴリが主カテゴリになります。
Movable Typeのブログ記事投稿画面でカテゴリを一括選択できる「AllCategorySelectorプラグイン」
Movable Typeでカテゴリを一括選択できる「AllCategorySelectorプラグイン」を公開します。
1.機能
ブログ記事投稿画面のカテゴリ選択で、一括選択のチェックボックスを表示します。

そのチェックボックスをチェックすれば、すべてのカテゴリを選択状態にします。チェックをはずせば、すべてのカテゴリの選択を解除します。選択したあと、個別にチェックをはずすことも可能です。

また、主カテゴリを決めたい場合はプラグイン設定画面で指定することができます。指定しない場合は一番上に表示されているカテゴリが主カテゴリになります。
このプラグインはMT5.06/MT5.12で動作します。ブラウザはFirefox7/Google Chrome15/IE8(IE9のドキュメントモードとブラウザモードをIE8)で動作確認しています。
2.価格
- 非商用利用:無償
- 商用利用:3150円/1サーバ(購入前に必ず動作確認してください)
非商用利用でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
2011.11.09 初版
2011.11.09 v0.02 全選択後の部分解除の不具合を修正
プラグインアーカイブを展開し、中にあるAllCategorySelectorフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「AllCategorySelector~」が表示されればインストール完了です。

4.プラグインの設定
プラグインを利用したいブログの管理画面で「ツール」→「プラグイン」→「AllCategorySelector~」→「設定」をクリックして、「このプラグインを有効にする」をチェックして「変更を保存」をクリックします。この操作を行わないと一括選択用のチェックボックスは表示されないので注意してください。

主カテゴリを固定したい場合は、「主カテゴリのカテゴリID」に該当のカテゴリIDを設定してください。この項目はオプションです。
Movable Typeで指定文字列を含むコメントを拒否する「CustomizedCommentfilterプラグイン」
Movable Typeで指定文字列を含むコメントを受け付けない「CustomizedCommentfilterプラグイン」を公開します。コメントを拒否するとコメント投稿時に次のようなメッセージを表示します。

このプラグインは山本和泉さんのFacebookの投稿をヒントに作りました。

1.機能
プラグインの設定画面に指定した文字列を含むコメントを受け付けないようにします。
Movable Typeのデフォルトプラグインで「SpamLookup - Keyword Filter」がバンドルされているのですが、このプラグインはMTのDBにコメントを登録して、一定期間経過後削除するようになっています。本プラグインはコメント自体をDBに登録しません。
2.価格
- 非商用利用:無償
- 商用利用:3150円/1サーバ(購入前に必ず動作確認してください)
非商用利用でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にあるCustomizedCommentfilterフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「CustomizedCommentfilter~」が表示されればインストール完了です。

3.プラグインの設定
コメントをフィルタしたいウェブサイトまたはブログの管理画面で「ツール」→「プラグイン」→「CustomizedCommentfilter~」→「設定」をクリックして、フィルタしたい文字列を改行区切りで設定します。またフィルタ状況をログに出力することもできます。

4.注意事項
次サイトにもいろいろなコメントフィルタ系のプラグインをインストールしていますが、なぜかすり抜けて登録されるスパムコメントが絶えません。
ということで、このプラグインも完全に機能するかどうか不明です。
Movable Typeでブログ権限付与時に親ウェブサイト名を表示する「AssociationBlogDiscriminatorプラグイン」
Movable Typeでブログ権限付与時に親ウェブサイト名を表示する「AssociationBlogDiscriminatorプラグイン」を公開します。
このプラグインは@hiraさんの以下のつぶやきをヒントに作りました。
1.機能
権限の付与で、「ユーザーにブログの権限を割り当てる」の作業を行う際、ブログを選択する画面がありますが、異なるウェブサイトに同じ名前のブログがあると、どのウェブサイトに属しているか分かりません。
下のスクリーンショットは、ブログの権限を割り当てる作業で表示されるブログ選択画面です。「First Weblog」という3つのブログはそれぞれ異なるウェブサイトに属していますが、どのウェブサイトに属しているか分からないため、選択が困難です。
プラグイン適用前のブログ選択画面

このプラグインを適用すれば、次のようにウェブサイト名をカッコつきで表示します。日本語表示ももちろん大丈夫です。
プラグイン適用後のブログ選択画面

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

Movable Typeのカスタムフィールドを一覧画面で編集できる「ListingFieldEditorプラグイン」
Movable Typeのカスタムフィールドを一覧画面で編集できる「ListingFieldEditorプラグイン」を公開します。
1.機能
カスタムフィールドのデータを一覧画面で編集できます。保存はAjaxで行います。
編集可能なフィールドは以下の通りです。今後さらに拡張する予定です。
テキストフィールド

テキストエリア

ラジオボタン

ドロップダウン

チェックボックス

画像

複数のカスタムフィールドを同時に編集することも可能です。
以下の一覧画面に対応しています。
- ブログ記事
- ウェブページ
- コメント
- アイテム
- ユーザー
また、藤本さんが開発されたAnotherCustomFieldsプラグインにも対応しています。
2.プラグインのダウンロード
ListingFieldEditorプラグイン専用のページを開設しましたので、そちらからダウンロード願います。
プラグインは今後も機能追加・改善を図っていく予定です。
3.謝辞
本プラグインは@riatwさんのアイデアを元に開発したものです。またプラグインについてはaklaswadさんから頂いたアドバイスをもとに完成にこぎつけることができました。この場をお借りしてお礼申し上げます。
IE9でMovable Typeの管理画面を操作できるようにする「EmulateIEプラグイン」
IE9でMovable Typeの管理画面を操作できるようにする「EmulateIEプラグイン」を紹介します。
1.機能
Movable Type 4や5は、IE9での動作が保障されていません。本プラグインを適用することで、MT4/MT5をIE9で使えるようにします。
具体的には、各バージョンで次のドキュメントモードを指定します。
- MT4.x:IE7
- MT5.0/MT5.1:IE8
ドキュメントモードの設定は、次のmeta要素で行います。
IE7として動作させる場合
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
IE8として動作させる場合
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />
本プラグインを作るにあたっての参考サイトは下記です。ありがとうございました。
- WingMemo - IE9とMT4
- CoolCat-Web - MT4がIE9だと使えない
- Web Application Programming Wiki* - ブラウザ/準拠仕様の切り替え
- ういはるかぜの化学 - X-UA-Compatibleが有効にならないことがあるケース
2.具体的な改善例
MT4とMT5の具体的な改善例をスクリーンショットで示します。利用したバージョンは4.292と5.12です。
MT4.292(プラグイン適用前:編集画面が1行になってしまう)

MT4.292(プラグイン適用後:編集画面を正常に表示)

MT5.12(プラグイン適用前:カテゴリのドラッグ不可)

MT5.12(プラグイン適用後:カテゴリのドラッグ可能)

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

5.注意事項
ドキュメントモードは、開発者モード(F12キーを押下)でも変更が可能です。

ただし、開発者モードでドキュメントモードの変更を行った後は、meta要素によるドキュメントモードの変更が効かないようです(これで1時間ほどハマりました)。
meta要素によるドキュメントモードの変更を有効にするには、開発者モードで操作したタブではなく、新しいタブで操作してください。
Movable Typeの記事更新履歴をクリアする「RevisionRemoverプラグイン」
Movable Typeの記事更新履歴をクリアする「RevisionRemoverプラグイン」を公開します。コメントでご質問を頂きましたので作ってみました。
1.機能
ブログ記事・ウェブページの記事更新履歴をクリアします。クリアするには、一覧画面のプラグインアクションで実行します。

また、一覧画面のオプションとして「更新履歴」を表示するようにしました。更新履歴をクリアすればこの欄が「0」または「1」になります。「更新履歴」を表示しておけば、プラグインアクションが実行されたことが分かりやすくなります(スクリーンショットは掲載用に縮小させています)。

更新履歴をクリアする方法は
- 完全にクリアするモード
- 最新の履歴を1つだけ残すモード
の2種類を用意しています。
2.価格
- 個人無償版/有償版での利用:3150円/1サーバ(事前に動作確認してください)
- Movable Type Open Source:無償
無償でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード・インストール
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にあるRevisionRemoverフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「RevisionRemover~」が表示されればインストール完了です。

4.プラグインの設定
プラグインを適用するウェブサイトまたはブログの「ツール」→「プラグイン」→「RevisionRemover~」→「設定」をクリック。
開いた画面で、履歴を完全にクリアしたい場合はチェックをはずして「変更を保存」をクリックします。デフォルトはチェックされた状態で、最新の履歴を残します。

5.注意事項
履歴を完全にクリアした場合でも、記事編集画面の「ステータス」には「リビジョン」とタイムスタンプが表示されます。

これは現在保存されている記事の最新更新時刻が表示されるためです。
Movable Typeで携帯サイト向けに画像を縮小表示する「ImageSizeModifierプラグイン」
Movable Typeで携帯サイト向けに画像を縮小する「ImageSizeModifierプラグイン」を公開します。
1.目的
スマホサイト向けのページは「jQueryでスマホサイト向けに画像サイズを縮小する方法」で紹介した通り、jQueryで画像サイズの変更が可能ですが、携帯サイトではJavaScriptが使えないキャリアがあるため、再構築によるページ出力時にimg要素のwidth属性を書き換えて、画像を縮小表示します。
変更可能なimg要素の属性は、次のルールで並んでいる必要があります。
- src属性の後方にwidth属性・height属性あること
- width属性・height属性の順序は不定。ただし属性間に別の属性が含まれないこと
- alt属性はimg要素の直後かsrc属性の直後のみ許容
- width属性またはheight属性の前のclass属性・style属性は許容。ただしclass属性・style属性の順に並んでいること
- width属性・height属性の後方の属性は何でも許容
下は上記ルールを許容する例です。
<img src="..." width="..." height="..."
<img alt="..." src="..." width="..." height="..."
<img src="..." alt="..." height="..." width="..."
<img alt="..." src="..." class="..." style="..." height="..." width="..."
<img alt="..." src="..." width="..." height="..." class="..." style="..."
MTのデフォルト機能を使って記事に挿入した画像のimg要素が縮小されることは、バージョン5.12で確認しています。
すいませんが携帯サイトでの表示は未確認です。
2.機能
- ブログ記事に記述されているimg要素のwidth属性値・height属性値について、ページ再構築時にプラグインで指定したサイズに変換します。
- 画像サイズを変更するテンプレートをプラグインで指定できます。
3.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
4.プラグインのダウンロード
下記のリンクからプラグインアーカイブをダウンロードし、任意のフォルダに保存してください。
修正履歴
2011.09.20 初版
- ImageSizeModifier_0_01.zip(MT4.x/MT5.0x/MT5.1x対応)
5.プラグインのインストール
プラグインアーカイブを解凍し、pluginsフォルダ配下にあるImageSizeModifierフォルダをpluginsディレクトリにアップロードしてください。
管理画面の「システム」→「プラグイン」でプラグイン設定画面を表示し、「ImageSizeModifier」が表示されればOKです。

6.プラグインの設定
プラグインを利用したいウェブサイトまたはブログ管理画面の「ツール」→「プラグイン」→「ImageSizeModifier」→「設定」でプラグイン設定画面を表示し、次の項目を設定します。
- テンプレートID:画像の幅を変更するテンプレートID。複数ある場合はカンマで区切る(カンマ前後の半角スペースは許容)
- 画像の幅:img要素のwidth属性に設定したい値。height属性値は比率を保った値を自動設定します

7.注意事項
このプラグインは、出力するページに含まれるすべてのimg要素に対して適用します。適用対象にしたくないimg要素は、1項に掲載している属性の並び順を変更してください。
また、変換後にはimg要素のsrc属性・width属性・height属性以外の属性は削除されます。
Movable Type 5のテンプレート編集画面でタブ文字が入力できる「TextareaTabEnablerプラグイン」
Movable Type 5のテンプレート編集画面でタブ文字が入力できる「TextareaTabEnablerプラグイン」を公開します。このプラグインはMT5.0/MT5.1で動作します。
1.機能
Movable Typeのテンプレート編集画面でタブ文字が入力できます。
タブ文字挿入前のカーソル位置

タブ文字挿入後のカーソル位置

注:このプラグインを利用する場合、「InvalidateCodeMirrorプラグイン」と併用し、CodeMirrorを無効にしてください(CodeMirrorの切り替えボタンで無効にするだけでは、本プラグインは正常に動作しません)。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
下記のリンクからプラグインアーカイブをダウンロードし、任意のフォルダに保存してください。
修正履歴
2011.09.08 初版
- TextareaTabEnabler_0_10.zip(MT5.0x/MT5.1x対応)
4.プラグインのインストール
プラグインアーカイブを解凍し、pluginsフォルダ配下にあるTextareaTabEnablerフォルダをpluginsディレクトリにアップロードし、mt-static/pluginsフォルダ配下にあるTextareaTabEnablerフォルダをmt-static/pluginsディレクトリにアップロードしてください。
システム管理画面の「ツール」→「プラグイン」でプラグイン設定画面を表示し、「TextareaTabEnabler」が表示されればOKです。「InvalidateCodeMirror」も
同様にインストールしてください。

テンプレート編集画面を開き、テキストエリアでタブ文字が入力できることと、入力した内容が保存できることを確認してください。
2011.09.15
4項の説明に誤りがありましたので修正しました。
アイテムのカスタムフィールド削除動作を改善する「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の投稿コメントのメールアドレスを半角に変換する「CommentEmailByteChangerプラグイン」
Movable Typeの投稿コメントのメールアドレスを半角に変換する「CommentEmailByteChangerプラグイン」を公開します。
1.機能
前提として、MTのコメント投稿機能で、認証なしのコメントを受けつけ、さらに名前とメールアドレスの入力を必須にしている状態にします(下)。

この状態でコメントのメールアドレスを全角文字で入力して投稿した場合、次のようなエラーになります。
全角入力して投稿した場合のエラー

メールアドレスを全角文字での入力(誤った入力)は次のような感じです。

下は半角文字での入力(正しい入力)です。

本プラグインを利用すれば、全角文字で入力したメールアドレスを半角文字に変換するので、冒頭のエラーが出なくなります。全角と半角が混在していても大丈夫です。
下は実際に全角で投稿したコメントの編集画面です。メールアドレスが半角で登録されているのが分かります。

本プラグインはMT5.0以上で動作します。
注:プラグインという位置づけですが、プラグインを実行させるために、MTのプログラムに1行書き加える必要があります。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード・インストール
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にある CommentEmailByteChangerフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「CommentEmailByteChanger~」が表示されればインストール完了です。

4.プログラムの修正
lib/MT/App/Comments.pmを任意のエディタで開き、910行目付近に、青色で示す1行を追加します。ここではMT5.12現在のプログラムに手を加えていますが、他のバージョンでもこのあたりの処理は変わっていないと思います。ポイントは赤色で示した「_make_comment」で探して、その次の行に挿入することです。
変更前
…前略…
my ( $comment, $commenter ) = _make_comment( $app, $entry, $blog );
return $app->handle_error(
$app->translate( "An error occurred: [_1]", $app->errstr() ) )
unless $comment;
…後略…
変更後
…前略…
my ( $comment, $commenter ) = _make_comment( $app, $entry, $blog );
MT->run_callbacks( 'comment_pre_save', $app, $comment, $commenter );
return $app->handle_error(
$app->translate( "An error occurred: [_1]", $app->errstr() ) )
unless $comment;
…後略…
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 );
…後略…
CurrentStyleプラグイン
Movable Typeに適用しているスタイルとレイアウトを表示する「CurrentStyleプラグイン」を公開します。
このプラグインを利用すれば、適用中のスタイル名(赤枠部分)を取得することができます。

1.機能
本プラグインでは次の拡張テンプレートタグを提供します。
- MTCurrentStyle:適用中のスタイルを出力
- MTCurrentLayout:適用中のレイアウトを出力
なお、データベースに保存しているデータをほとんど整形せずに出力しているので、スタイル選択画面通りの表記にはなりません。冒頭のスクリーンショットの「Cityscape SF」は「cityscape-sf」となります。
このプラグインはMT5以降で利用可能です。
2.プラグインのダウンロード・インストール
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にある CurrentStyleフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「CurrentStyle~」が表示されればインストール完了です。

3.テンプレートタグ
提供されているテンプレートタグを、例えば次のように設定します。
このブログのスタイルは「<$mt:CurrentStyle$>」です。<br />
このブログのレイアウトは「<$mt:CurrentLayout$>」です。
出力結果は次のようになります。

Movable Type 5でお気に入りリストが作れる「Linklistプラグイン」
Movable Type 5でお気に入りリストが作れる「Linklistプラグイン」を公開します。
このプラグインを利用すれば、次のようなリンクリストを簡単に作ることができます。

1.機能
- リンク情報(タイトル/URL/説明)をMTに登録することができます
- 登録したリンクをテンプレートタグで出力することができます
- 登録したリンク単位に公開・非公開の状態をもち、非公開のリンクはテンプレートタグで出力対象外になります
1ヶ月半ほど前にリスティングフレームワークの勉強がてら作ったものです。
注:対応バージョンは5.1以降になります。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
プラグインアーカイブを展開し、中にある Linklistフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「Linklist~」が表示されればインストール完了です。

4.リンクの登録
管理画面の「リンクリスト」→「新規」をクリックすればリンクの登録画面が表示されます。
テンプレートタグで出力対象にしたくない場合は、「ステータス」を「非公開」にしてください。

5.リンクの一覧
管理画面の「リンクリスト」または「リンクリスト」→「一覧」をクリックすれば、リンクの一覧画面が表示されます。一覧画面はリスティングフレームワークを利用しています。
6.テンプレートタグ
プラグインで提供する拡張テンプレートタグは以下のとおりです。
- MTLinklist:リンクの一覧を出力するためのブロックタグ
- MTLinklistHeader:リンクの一覧で初回のみ実行されるブロックタグ
- MTLinklistFooter:リンクの一覧で最後に実行されるブロックタグ
- MTLinkURL:リンクのURLを出力するファンクションタグ
- MTLinkTitle:リンクのタイトルを出力するファンクションタグ
- MTLinkDescription:リンクの説明を出力するファンクションタグ
以下の特殊変数にも対応しています。
- __first__
- __last__
- __odd__
- __even__
- __counter__
7.ページにリンクリストを表示する
ウィジェットに次のサブテンプレートを登録すれば、リンクリストをページに出力することができます。
<mt:Linklist>
<mt:LinklistHeader>
<div class="widget-archives widget">
<h3 class="widget-header">お気に入り</h3>
<div class="widget-content">
<ul>
</mt:LinklistHeader>
<li><a href="<$mt:LinkURL$>"><$mt:LinkTitle$></a></li>
<mt:LinklistFooter>
</ul>
</div>
</div>
</mt:LinklistFooter>
</mt:Linklist>
記事一覧画面にアイテムを表示する「EntryAssetListingプラグイン」
Movable Typeの記事一覧画面にアイテムを表示する「EntryAssetListingプラグイン」を公開します。
6月25日に行われるMTDDCの自主学習用です。作成にあたっては藤本壱さんのプラグインを参考にさせて頂きました。ありがとうございました。
1.機能
- 関連アイテムとして登録されている画像のサムネイルを一覧に表示します。
- サムネイルの横にアイテムの名前を表示します。名前は非表示にすることもできます。
- サムネイルは横並びにすることもできます。
- サムネイルの表示幅を変更することができます。
アイテムの名前を非表示にしたところ

横並びにしたところ

画像以外のアイテムの考慮とかいろいろできていません。α版としてご利用ください。
2.プラグインのダウンロード・インストール
下記のリンクをクリックして、プラグインアーカイブをダウンロードします。
変更履歴
2011.06.22 初版
2012.01.07 v0.02 システム管理画面でエラーが発生する不具合を修正
プラグインアーカイブを展開し、中にある EntryAssetListingフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「EntryAssetListing~」が表示されればインストール完了です。

インストールが完了した時点で使えるようになります。記事一覧のオプションに「アイテム」が表示されるので、チェックすれば一覧に表示されます。

3.プラグインの設定
ウェブサイトまたはブログ記事管理画面の「ツール」→「プラグイン」→「EntryAssetListing」→「設定」をクリックすれば次の変更を行えます。
- リストの表示幅:アイテム列の表示幅をpx指定で変更します。
- 名前を表示する:チェックをはずせば名前を非表示にします。
- 画像を並べて表示:チェックすれば画像を横並びにします。アイテムの名前は非表示になります。

Movable Typeのカレンダーを月曜日始まりにする「MondayCalendarプラグイン」
Movable Typeのカレンダーを月曜日始まりにする「MondayCalendarプラグイン」を公開します。
プラグイン適用前

プラグイン適用後

1.機能
- カレンダーの週初めの曜日を変更するMTMondayCalendarブロックタグを提供します。このブロックタグはMTCalendarタグと同じ効果があります。
- 任意の曜日を週初めに設定できます
このプラグインはMTCalendarのコードを流用しています。コード内にある、カレンダーを冗長に再構築しないためのリクエストキャッシュにも手を加えているので、(多分)正常に動作すると思います。
ご自由にお使いください。
2.プラグインのダウンロード
GithubのMondayCalendarプラグインのページにある「Downloads」をクリックして、プラグインアーカイブをダウンロードします。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある MondayCalendarフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン設定画面で、「MondayCalendar~」が表示されればインストール完了です。

4.テンプレートの設定
カレンダーを月曜日始まりにする場合、クラシックブログなどであれば、「カレンダー」ウィジェットの編集画面を開き、MTCalendarタグをMTMondayCalendarタグに書き換えます。
変更前
…前略…
<mt:Calendar>
<mt:CalendarWeekHeader>
<tr>
</mt:CalendarWeekHeader>
…後略…
変更後
…前略…
<mt:MondayCalendar>
<mt:CalendarWeekHeader>
<tr>
</mt:CalendarWeekHeader>
…後略…
カレンダーウィジェットの曜日の表示部分は、月曜日を先頭に移動してください。
<table summary="リンク付きのカレンダー">
<tr>
<th abbr="月曜日">月</th>
<th abbr="火曜日">火</th>
<th abbr="水曜日">水</th>
<th abbr="木曜日">木</th>
<th abbr="金曜日">金</th>
<th abbr="土曜日">土</th>
<th abbr="日曜日">日</th>
</tr>
5.任意の曜日を週の始まりにする
firstモディファイアを利用すれば、任意の曜日を週の始まりにすることができます。次のサブテンプレートは水曜日を週始めにする例です。
…前略…
<mt:MondayCalendar first="wed">
<mt:CalendarWeekHeader>
<tr>
</mt:CalendarWeekHeader>
…後略…
モディファイアの値には次のいずれかを設定してください。何も設定しない場合は月曜日が週初めになります。
- 月曜日:mon
- 火曜日:tue
- 水曜日:wed
- 木曜日:thu
- 金曜日:fri
- 土曜日:sat
- 日曜日:sun
ウィジェットセット更新時にインデックステンプレートを再構築する「RebuildByChangeWidgetプラグイン」
Movable Type 5で、ウィジェットセット更新時にインデックステンプレートを再構築する「RebuildByChangeWidgetプラグイン」を公開します。
1.機能
プラグインで指定した特定のウィジェットセットを更新すると、プラグインで指定したインデックステンプレートを再構築します。
利用シーンは、インデックステンプレートでページを作成し、そのページでウィジェットセットを使って画像などの管理を行い、画像の入れ替えを行う場合です。ウィジェットセット更新後、テンプレート再構築の手間を省くことができます。

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

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

各フィールドの意味は次のとおりです。
- ウィジェットセット名:更新時に再構築を行いたいウィジェットセット名を設定
- インデックステンプレート名:上記のウィジェットセットを更新したときに再構築したいインデックステンプレート名を設定
現状では1つのウィジェットセットと1つのインデックステンプレートしか設定できませんが、今後は複数設定できるように改善を行いたいと思います。
アイテム更新時に関連記事を再構築する「RebuildByUpdateAssetプラグイン」
Movable Type 5で、アイテム更新時に関連記事を再構築する「RebuildByUpdateAssetプラグイン」を公開します。
1.機能
アイテム更新時(ファイルのアップロード含む)に、該当アイテムを関連付けているブログ記事またはウェブページを再構築します。
記事中に画像の情報(ファイル名・タグなど)やMTタグで生成したサムネイルを表示している場合は、アイテム更新後に記事の再構築を行う手間が省けます。
自明と思われますが、記事中から元画像を直接参照しており、その画像を差し替える場合はこのプラグインを使う必要はありません(ファイルをアップロードすることで画像が切り替わるため)。再構築を行わないと変更が反映されない場合のみご利用ください。
利用可能バージョンはMT5.xです。MT4.xはアイテムを関連付ける機能がないため、利用できません。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.ダウンロード・インストール
以下のリンクからダウンロードし、展開した中にあるRebuildByUpdateAssetフォルダをpluginsディレクトリにアップロードしてください。
システム管理画面の「ツール」→「プラグイン」で「RebuildByUpdateAsset~」が表示されればインストール完了です。
4.注意事項
現在のバージョンで再構築対象となるのは、ブログ記事またはウェブページのみです。今後、他のアーカイブやインデックステンプレートも再構築対象にする予定です。
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.その他
主な機能は無効なチェックボックスを有効にすることだったのですが、コードの解析にかなり時間がかかりました・・・。
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.ブログ記事アイテム・カスタムフィールドのエクスポートとインポート
カスタムフィールドやアイテムを含んだ具体的な移行手順については以下の記事を参照してください。
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?」以降の文字列を設定してください。
Movable Typeのアイテム一覧にフォルダを表示する「AssetFolderViewerプラグイン」
Movable Typeのアイテム一覧にフォルダを表示する「AssetFolderViewerプラグイン」を公開します。
1.機能
このプラグインを適用することで、アイテム一覧にアイテムのフォルダ(パス)を表示します。
表示するパスはサイトパスを除いた部分になります。フォルダ機能を利用してアップロードしたアイテムは、フォルダに該当するパスが表示されます。
2.価格
- 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
- 有償版での商用利用:1000円/1サーバ(事前に動作確認してください)
無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのダウンロード
GithubのAssetFolderViewerプラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
4.プラグインのインストール
プラグインアーカイブを展開し、中にある AssetFolderViewerフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「AssetFolderViewer~」が表示されればインストール完了です。

ブログ記事保存時に別のブログ記事を再構築する「RebuildEntryByIdプラグイン」
ブログ記事保存時に別のブログ記事を再構築する「RebuildEntryByIdプラグイン」を公開します。このプラグインは「RebuildBlogByIDプラグイン」や「RebuildIndexByIdプラグイン」を参考にさせて頂いてます。
1.機能
ブログ記事・ウェブページのプライベートタグに再構築したい記事IDを指定しておけば、その記事を保存・更新した時に、指定した記事を同時に再構築します。指定する記事IDは別ブログでも構いません。これにより複数ブログによるサイト構築時、MultiBlogによるインデックスページ以外に、ブログ記事間での再構築の連携が行えるようになります。
文章では伝わりにくいのでイメージを下図に示します。

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

5.プライベートタグの設定と動作について
ブログ記事またはウェブページのタグに「@rebuild_x」というプライベートタグを設定してください。「x」の部分には、再構築したい記事のIDを設定します。
このプライベートタグを設定したブログ記事またはウェブページを保存・更新したとき、設定したプライベートタグに含まれる記事IDの記事を再構築します。
複数の記事を再構築したい場合は、「@rebuild_x」というプライベートタグを必要な分だけ設定してください。
6.接頭辞の変更
プライベートタグのデフォルトの設定形式は4項の通り「「@rebuild_x」となっていますが、接頭辞にあたる「rebuild_」を、他の文字列に変更することができます。
変更するには、プラグインを利用したいブログ管理画面のプラグイン一覧で、「RebuildEntryById~」→「設定」をクリックし、「プライベートタグの接頭辞」を書き換えてください。

7.制約事項
現在、このプラグインで再構築する対象は「ブログ記事アーカイブ」のみです。
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プラグイン
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~」→「設定」をクリックして、カスタムフィールドを表示させたいオブジェクトをチェックして保存してください。評価版では「ブログ記事」のみ表示されます。
CommentAuthorIdentityプラグイン
Movable Typeで、認証サービスに登録しているプロフィール・ページへのリンクを表示するMTCommentAuthorIdentityタグの改良版の「CommentAuthorIdentityプラグイン」を公開します。
1.改善点
既存のMTCommentAuthorIdentityタグでは次のような(X)HTMLマークアップが出力されますが、alt属性値が空の状態で出力されます。
<img alt="" src="http://.../mt-static/images/comment/mt_logo.png" width="16" height="16" />
ということで、MTCommentAuthorIdentityタグにaltモディファイアを加えて、alt属性値を設定できるようにしてみました。またtitle属性を出力できるよう、titleモディファイアも加えました。
ちなみに、既存のMTCommentAuthorIdentityタグにregex_replaceモディファイアを組み合わせれば、alt属性の内容を設定することは可能です。
2.プラグインのダウンロード
GithubのCommentAuthorIdentityプラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある CommentAuthorIdentityフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「CommentAuthorIdentity~」が表示されればインストール完了です。

4.MTCommentAuthorIdentityタグについて
MTCommentAuthorIdentityタグにaltモディファイア/titleモディファイアを設定し、img要素のalt属性値を記述します。
<mt:CommentAuthorIdentity alt="foo" title="bar" />
altモディファイアを省略した場合は「alt="logo"」を出力します。titleモディファイアを省略した場合は「title="commenter logo"」を出力します。
2010年作成のMovable Type(MT)プラグイン一覧
2010年に当ブログで公開したMovable Typeプラグイン一覧です。用途別+アルファベット順に並べています。2010年に作成したプラグインは合計24と、過去最多です。
よければ2009年のプラグイン一覧もご覧ください。
1.苦労したプラグイン
紹介の前に、作成したプラグインの中で開発に苦労したトップ3を挙げておきます。
第3位:AssetExporter プラグイン
理由:このプラグインはMTDDCに講師として招待されたときのサンプルとして作成したものです。そもそもプラグインによるテーマフレームワークの拡張は初めてだったので(インポータの作成経験はありましたがエクスポータを含めたものは初めて)、その理解から始まり、テーマのエクスポート時にアイテムの実体(ファイル)のダウンロードやレジストリとの対応に苦労しました。
結局、当日まですべてを実装することはできなかったので、アップロード時に元のディレクトリを復元する機能についてはかなり後になって追加しました。
全体で延べ5日ほどかかりました。
第2位:TwitCommentプラグイン
理由:OAuth認証が分かっていなかった+OAuth認証の実装がまったく分かっていなかった+サインイン部分のレジストリの実装が分かっていなかった+OAuth認証後に元のブログ記事ページを表示する方法が全く分かっていなかった、という全く素の状態で着手したため、どこから手をつけてよいのかさっぱり分からず気が狂いそうでした(笑)。そういうわけで、サインイン後にブログ記事ページが表示されたときは本当に感無量でした。
また、Twitterのプロフィール画像をMTのプロフィール画像として収集する処理の実装にも時間がかかりました。
全体で延べ1週間ほどかかりました。
第1位:PreviewTargetChangerプラグイン
理由:2位のTwitCommentプラグインも結構時間がかかったのですが、一番悩んだのはこのPreviewTargetChangerプラグインです。公開する数ヶ月に一度着手したのですが何回作り直しても期待通りの動作にならず、「これはMTの管理画面に何か問題がある!」と勝手に決めつけて(笑)、一度作るのを諦めました。
その後、フォーム送信に関するスキルを身につけ、「フォームから別ウィンドウを開く方法のまとめ」のデータを元に再チャレンジし、ある程度まともな動きになりましたが、プレビュー後に公開ボタンが正常に動作しない(プレビュー画面で再構築が実行されてしまう)ところでつまづき、さんざん悩んだ挙句、ふと「プレビュー時に設定したform要素のtarget属性の値を上書きすればCGI実行画面が切り替わるのでは?」とひらめき、ようやく期待した動作に仕上がりました。自分で使っていて一番気に入っているプラグインのひとつです。
全体で延べ1週間ほどかかりました。
2.管理画面関連
AddAccesskey プラグイン
記事作成画面のフォームボタンに次のaccesskey属性を付与します。Windowsであれば、「Alt+アクセスキー」や「Shift+Alt+アクセスキー」で動作を実行できるようになります。キーの組み合わせはブラウザによって異なります。
- 下書き保存:d
- プレビュー:v(デフォルトのまま)
- プレビューから作成画面に戻る:e(デフォルトのまま)
- 公開:p
- 更新:p
- 公開取り消し:d
AuthorInformationEditControllerプラグイン
システム権限のないMTユーザーについて、ユーザー情報変更画面で「ユーザー名」の入力フィールドを disabled にします。オプションによって「表示名」「電子メール」「ウェブサイトURL」の入力フィールドを disabled にすることができます。

また、各管理画面右上にあるユーザー情報へのリンク自体を無効にすることもできます。
AvailableWidgetSorter プラグイン
ウィジェットセット編集画面にある右側の「利用可能」に表示されたウィジェットを、ウィジェット名できれいに並べ替えます。
適用前

適用後

CharsetEncoder プラグイン
ウェブサイトまたはブログで出力するページの文字エンコーディングを変更します。
文字エンコーディングはテンプレート別の指定も可能です。

CMSHead プラグイン
管理画面のhead要素に任意の内容を入力することができます。管理画面に独自CSSやscript要素を追加したい場合に便利です。

ExpandCategoryAreaCSS プラグイン
ブログ記事投稿画面のカテゴリ選択エリアを広げます。前述のCMSHead プラグインはここからヒントを得て作成したものです。
変更前

変更後

IncludeTemplateViewer プラグイン
テンプレートモジュールおよびウィジェット編集画面で、インクルード元のテンプレート一覧を出力します。インクルード関係を簡単に把握することができます。
InvalidateBlogNameCSS プラグイン
Movable Type 5の管理画面で、長いブログ名を全て表示します。
適用前

適用後

PreviewTargetChangerプラグイン
ブログ記事編集画面で「プレビュー」をクリックすると、プレビューを別ウィンドウに表示し、編集作業を効率よく行うことができます。
PublishButtonChangerプラグイン
ブログ記事・ウェブページ作成画面で次の動作を行う場合、確認のダイアログを表示します。「OK」をクリックすればクリックしたボタンの動作を継続し、「キャンセル」をクリックすれば中止します。
- 新規作成→「公開」をクリックしたとき
- 未公開(原稿)状態→「公開」をクリックしたとき
- 公開状態→「公開」をクリックしたとき
- 公開状態→「公開取り消し」をクリックしたとき

また、デフォルトで青色になっている「公開」ボタンの配色をグレーに変更し、「下書き保存」を青色に変更することで、誤って「公開」ボタンをクリックする行為を防止します。
PagePublishControllerプラグイン
ウェブページのスタティックパブリッシングをページ単位に抑止します。下の画面のチェックボックスをチェックしておけば、ウェブページの保存時やアーカイブの再構築時に出力を抑止します。

「お知らせ」などで、ウェブページの本文のみをメインページなどに表示するために利用し、ウェブページ自体を出力したくない場合に便利です。
ThemeConfirmerプラグイン
テーマの「適用」をクリックしたときに、確認のダイアログを表示します。ダイアログにはテーマ名を表示します。
3.コメント
ReplyCommenterAddressChangerプラグイン
Movable Typeでは、返信形式でコメント投稿すると、返信元のコメント投稿者にコメント投稿の通知を行う仕様になっています。testのコメント投稿後、yujiroには、次のようにコメントへの返信があったことを通知するメールが届きます。モザイクをかけている部分には返信コメント投稿者のメールアドレスが表示されます。
適用前

このプラグインを適用すれば、返信元のコメント投稿者に送信される通知メールのFromヘッダのメールアドレスを、次のように任意のアドレスに変更することができます。
適用後

TwitCommentプラグイン
Movable Typeで、TwitterのOAuth認証によるコメント投稿を実現します。
- TwitterのOAuth認証でのコメント投稿が可能です
- TwitterのOAuth認証で投稿されたコメントに対応するコメンター画像が表示可能です

4.テーマ拡張
AssetExporter プラグイン
ウェブサイトまたはブログのアイテムをテーマにエクスポートします。

EntryImporter プラグイン
ブログ記事のインポータを提供します。
PageExporter プラグイン
ウェブサイトまたはブログのウェブページをテーマにエクスポートします。

SettingExporter プラグイン
ウェブサイト/ブログの設定をテーマにエクスポートします。

5.拡張テンプレートタグ
AssetDateModified プラグイン
アイテムの更新日を出力するMTAssetDateModifiedタグを提供します。
Crypt プラグイン
文字列の暗号化 (ハッシュ化) を行うcrypt モディファイアを提供します。インデックステンプレートを利用して .htpasswd を出力する場合に便利です。
CustomFieldExtensionTags プラグイン
CustomField用の次のファンクションタグを提供します。これらのタグはMTXXCustomFieldsタグブロック内で有効です。
- MTCustomFieldTag:カスタムフィールドのテンプレートタグ
- MTCustomFieldOptions:カスタムフィールドのオプション
- MTCustomFieldID:カスタムフィールドID
- MTCustomFieldDefault:カスタムフィールドのデフォルト値
- MTCustomFieldType:カスタムフィールドの種類
- MTCustomFieldObjectType:カスタムフィールドのシステムオブジェクト
- MTCustomFieldBlogID:カスタムフィールドのブログID
EntryRevision プラグイン
ブログ記事のリビジョン番号を出力するMTEntryRevisionファンクションタグを提供します。
IndexFileNameプラグイン
再構築中のインデックステンプレートのファイル名を出力するMTIndexFileNameファンクションタグを提供します。
Object プラグイン
Movable Typeのオブジェクトデータを取得するためのMTObjectsブロックタグとMTObjectファンクションタグを提供します。
6.その他
現在、第1位のプラグインの大変さをはるかに上回るプラグインを2つ開発中です。ひとつはプラグインの動作があまりに複雑過ぎて設計書まで書いてます(笑)。いずれ公開できると思います。
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~」が表示されればインストール完了です。

ReplyCommenterAddressChangerプラグイン
Movable Type 5で返信形式でのコメント投稿時のメールアドレスを変更するReplyCommenterAddressChangerプラグインを公開します。
1.機能
Movable Typeでは、返信形式でコメント投稿すると、返信元のコメント投稿者にコメント投稿の通知を行う仕様になっています。例えば、コミュニティ掲示板で、yujiroのコメントに対し、testが次のような返信コメントを行ったとします。

testのコメント投稿後、yujiroには、次のようにコメントへの返信があったことを通知するメールが届きます。モザイクをかけている部分には返信コメント投稿者のメールアドレスが表示されます。

このプラグインを適用すれば、返信元のコメント投稿者に送信される通知メールのFromヘッダのメールアドレスを、次のように任意のアドレスに変更することができます。

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

4.プラグインの設定
ブログ(またはウェブサイト)管理画面のプラグイン一覧で、「ReplyCommenterAddressChanger~」→「設定」をクリックし、「From: に表示するメールアドレス」に任意のメールアドレスを設定し、「変更を保存」をクリックします。

これで返信コメントを投稿すると、元コメント投稿者には1項の最後に示したメールが送信されます。
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~」をクリックし、さらに「設定」をクリックすれば、ダイアログのメッセージやボタンの背景色を変更できます。

AvailableWidgetSorter プラグイン
Movable Type 5のウィジェットセット編集画面にある右側の「利用可能」に表示されたウィジェットを並べ替えるプラグインです。
MTQに5.1への要望としてあがってましたので、とりあえず5.0x版を作ってみました。
1.機能
このプラグインを適用することで、ウィジェットセット編集画面にある右側の「利用可能」に表示されたウィジェットを名前順に並べ替えられます。
ウィジェット一覧の「利用可能」の表示(プラグイン適用前)

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

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

降順・昇順の表示については次のバージョンで設定できるようにする予定です。
AssetDateModified プラグイン
Movable Typeでアイテムの更新日を表示するAssetDateModified プラグインを公開します。
1.機能
デフォルトで用意されているMTAssetDateAddedタグではアイテムの作成日を出力することはできますが、更新日を出力することができません。
このプラグインでは、アイテムの更新日を出力するMTAssetDateModifiedタグを提供します。
2.プラグインのダウンロード
GithubのAssetDateModified プラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
上記からダウンロードできない場合は下記のリンクからダウンロードしてください。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある AssetDateModified フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「AssetDateModified~」が表示されればインストール完了です。

4.テンプレートタグの使い方
MTAssetsタグの中にMTAssetDateModifiedタグを記述すれば、アイテムの更新日を出力できます。更新を行っていない場合、更新日は作成日と同じ内容が出力されます。
<mt:Assets>
作成日:<mt:AssetDateAdded />
更新日:<mt:AssetDateModified />
</mt:Assets>
出力結果
作成日:2010年11月 9日 00:03
更新日:2010年11月10日 09:01
更新日の対象となるのは、アイテムの名前などの情報を変更した場合や、アイテムのアップロードで上書きを行った場合などです。
Movable Typeのデータベースに対し任意のフィールドデータを取得できる「Object プラグイン」
Movable Typeのデータベースに対し、任意のフィールドを指定してデータを取得できるプラグインを作ってみました。お遊び的なものですが、提供されていないテンプレートタグの代替テンプレートタグとしての利用が可能かもしれません。
MTQに「アイテムの更新日付を取得するタグを機能追加してほしいです」という要望があり、そこにoscarさんの「MTAssetPropertyタグで出力出来ちゃうみたいです」という回答で閃いて作ってみました。
1.機能
このプラグインは、Movable Typeのオブジェクトデータを取得するためのMTObjectsブロックタグとMTObjectファンクションタグを提供します。具体的な使い方は4項をご覧ください。
例えば、アイテムの更新日時を取得するタグは提供されていませんが、次のようにMTObjectファンクションタグを使えば取得することができます(ただし出力結果の整形は別途必要)。
<mt:Assets>
<mt:Object name="asset" property="modified_on" />
</mt:Assets>
最初は既存のMTObjectファンクションタグだけにしていたのですが、実験的な意味でMTObjectsブロックタグも付け加えました。ブロックタグ名は複数形の「Objects」にしていますが、ちょっと不自然な感じもするので変更するかもしれません。
2.プラグインのダウンロード
GithubのObject プラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある Object フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「Object~」が表示されればインストール完了です。

4.テンプレートタグの使い方
ブロックタグのMTObjectsタグにはnameモディファイアを与えます。モディファイアの値にはデータベースのテーブル名から「mt_」を除いた名称(=datasource名)を設定します。これにより、該当のテーブルの内容を取得します。
例えば、記事オブジェクトのテーブルは、「mt_entry」なので、設定する値は「entry」となり、次のように設定します。
<mt:Objects name="entry">
…中略…
</mt:Objects>
MTObjectファンクションタグには、nameモディファイアとpropertyモディファイアの2つのモディファイアを設定します。nameモディファイアの値には、MTObjectsタグのnameモディファイア、またはMTObjectタグを括っているブロックタグのstashのキーを設定し、propertyモディファイアには、テーブルのフィールド名から「datasource名_」を除いた名称を設定します。
例えば、記事タイトルを出力する場合、タイトルに該当するフィールド名は「entry_title」なので、設定する値は「title」となります。
MTObjectタグは、MTObjectsタグで括る方法と既存のブロックタグ(ここではMTEntries)で括る方法の、2通りの書き方が可能です。
<mt:Objects name="entry">
<mt:Object name="entry" property="title" />
</mt:Objects>
<mt:Entries>
<mt:Object name="entry" property="title" />
</mt:Entries>
「stash」は、MTの内部処理で異なるテンプレートタグ(ここではブロックタグとファンクションタグ)間でデータを引き継ぐためのメソッドで、記事データであれば、stashメソッドに「entry」というキーを与えることで、記事オブジェクトのデータを取得することができます。
キーの値は(多分)datasource名と等しいと思うので、ソースコードをトレースしなくても大丈夫だと思います。設定値は次項を参照してください。
5.サンプル
各オブジェクトを取得するサンプルを示します。カッコ内はファンクションタグで取得しているフィールドです。
コメント(本文)
<mt:Comments>
<mt:Object name="comment" property="text" />
</mt:Comments>
<mt:Objects name="comment">
<mt:Object name="comment" property="text" />
</mt:Objects>
カテゴリ(カテゴリ名)
<mt:Categories>
<mt:Object name="category" property="label" />
</mt:Categories>
<mt:Objects name="category">
<mt:Object name="category" property="label" />
</mt:Objects>
アイテム(名前)
<mt:Assets>
<mt:Object name="asset" property="label" />
</mt:Assets>
<mt:Objects name="asset">
<mt:Object name="asset" property="label" />
</mt:Objects>
テンプレート(テンプレート名)
<mt:Objects name="template">
<mt:Object name="template" property="name" />
</mt:Objects>
ユーザー(名前)
<mt:Authors>
<mt:Object name="author" property="name" />
</mt:Authors>
<mt:Objects name="author">
<mt:Object name="author" property="name" />
</mt:Objects>
ログ(メッセージ)
<mt:Objects name="log">
<mt:Object name="log" property="message" />
</mt:Objects>
セッション(データ)
<mt:Objects name="session">
<mt:Object name="session" property="data" />
</mt:Objects>
次のように特殊変数も使えます。
<mt:Objects name="entry">
<mt:if name="__first__">first</mt:if>
<mt:if name="__last__">last</mt:if>
<mt:if name="__odd__">odd</mt:if>
<mt:if name="__even__">even</mt:if>
<mt:var name="__counter__">
<mt:Object name="entry" property="title" />
</mt:Objects>
繰り返しにになりますが、MTObjectsブロックタグは実験的なものなので、細かい指定はできません。
2010.11.10
4項の説明に一部誤りがありましたので修正しました。
TwitterのOAuth認証でMovable Typeにコメント投稿できる「TwitComment」プラグイン
Movable Typeで、TwitterのOAuth認証によるコメント投稿を実現する「TwitCommentプラグイン」を公開します。

2010.11.01追記:Twitterのガイドラインに抵触しないよう、プラグイン名および使用画像を変更しました。
このプラグインは、「コメント投稿にTwitterのOAuth認証を導入」で紹介したものです。1項の2つめの機能追加を行ってから公開しようと思ってましたが、しばらく多忙だったため公開が遅れてしまいました。
1.機能
- TwitterのOAuth認証でのコメント投稿が可能です。
- TwitterのOAuth認証で投稿されたコメントに対応するコメンター画像が表示可能です(冒頭の画像)。
このプラグインはブログ/ウェブサイト単位に機能します。4項・5項の作業はブログ/ウェブサイト単位に行ってください。
2.プラグインのダウンロード
下記の TwitComment_x_xx.zip をクリックして、プラグインアーカイブをダウンロードします。
変更履歴
2010.11.01 初版
2010.11.03 v0.02 phpファイル変更
2010.11.07 v0.03 ウェブサイト/ブログ作成でエラーになる不具合を修正
2010.11.08 v0.021 Movable Type 4.x対応版公開
2010.11.25 v0.022 Movable Type 4.x対応版でプロフィール画像が表示されない不具合を修正
2010.12.01 v0.04/v0.023 セキュリティアップデート/画像ファイルアップロード処理の改善
- TwitComment_0_04.zip(Movable Type 5.x用)
- TwitComment_0_023.zip(Movable Type 4.x用)
動作確認バージョンは、Movable Type 4.27/Movable Type 5.03xです。
3.プラグインのインストール
プラグインアーカイブを展開し、pluginsディレクトリ直下にある TwitComment フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。また、mt-static/pluginsディレクトリ直下にある TwitComment フォルダごと、Movable Type のアプリケーションディレクトリの mt-static/plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「TwitComment~」が表示されればインストール完了です。

4.Twitterのアプリケーション登録
Twitterにログインして、「ユーザー名」→「設定」をクリック。

「連携アプリ」をクリック。

「開発者」の説明にある「こちら」をクリック。

「新しいアプリケーションを追加」をクリック。

表示されたページで次の設定を行います。
- アプリケーションのアイコン:(設定不要)
- アプリケーション名:任意のアプリケーション名を入力
- アプリケーションの説明:任意のアプリケーションの説明を入力。
- アプリケーションのウェブサイトURL:任意のURLを入力(プラグインの動作とは関係ありません)
- 所属会社/団体:(設定不要)
- サイト:(設定不要)
- アプリケーションの種類:「ブラウザアプリケーション」を選択
- コールバックURL:以下のURLを設定(赤字のみ自サイトの内容に入れ替え)
http://アプリケーションディレクトリまでのURL/mt-comments.cgi?__mode=oauth_verified&blog_id=xx&client=twitter - Default Access type:「Read-only」を選択
- Twitterでログインする:チェックします
2つのCAPTCHAコードを半角スペースで区切ってテキストフィールドに入力し、保存すれば「Consumer key」と「Consumer secret」が表示されます。この2つの値は次の作業で使用します。

設定内容は後で変更することができます。変更する場合は、この画面にある「Edit Application Settings」を、「Consumer key」と「Consumer secret」を変更したい場合は、「Reset Consumer Key/Secret」をクリックします。

5.プラグインの設定
TwitCommentプラグインを使用したいブログまたはウェブサイトの「設定」→「登録/認証」をクリックして、「Twitter Commentプラグイン設定」のリンクをクリック。
![]()
プラグイン一覧画面に移動するので、「TwitComment」の設定タブを開き、4項で取得した、「Consumer key」と「Consumer secret」を設定して、「変更を保存」をクリックします。

「設定」→「登録/認証」画面に戻って、「Twitter」をチェックして「変更を保存」をクリックします。
![]()
これで設定完了です。
6.基本動作確認
任意の記事のコメント投稿フォームでサインインをクリックし、「Twitter」を選択。

これで次のような画面に切り替わるので、Twitterのロゴをクリック。

アカウントへの接続要求画面にリダイレクトするので、「許可する」をクリックします。
利用しているブラウザでTwitterにログインしていない状態であれば、ユーザー名・パスワードを入力する画面が表示されます。
これでサインインできました。

投稿コメントにはTwitterのロゴやユーザー名が反映されます。リンクをクリックすれば、Twitterのユーザーページにジャンプします。

7.Twitterのアイコンを表示する
冒頭のようにTwitterのアイコンをコメント一覧に表示する方法ですが、コミュニティ機能を利用している場合、テンプレートの変更は不要です。コメントを投稿すれば冒頭のアイコンが表示されます。
プロフィール画像機能は、コミュニティ機能をもたないMTOSなどでも利用可能なはずです。「プロフィール画像」のテンプレートについては、次のページを参考にしてください。
AddAccesskey プラグイン
Movable Typeの記事作成画面のフォームボタンにaccesskey属性をつける「AddAccesskey」プラグインを公開します。
1.機能
このプラグインでは、記事作成画面のフォームボタンに次のaccesskey属性を付与します。Windowsであれば、「Alt+アクセスキー」や「Shift+Alt+アクセスキー」で動作を実行できるようになります。キーの組み合わせはブラウザによって異なります。
- 下書き保存:d
- プレビュー:v(デフォルトのまま)
- プレビューから作成画面に戻る:e(デフォルトのまま)
- 公開:p
- 更新:p
- 公開取り消し:d
「d」はdraft、「p」はpublishの意味です。
次回以降のバージョンアップではaccesskeyの値をプラグイン設定画面でカスタマイズできるようにしたいと思ってます。
2.プラグインのダウンロード
下記の AddAccesskey_x_xx.zip をクリックして、プラグインアーカイブをダウンロードします。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある AddAccesskey フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「AddAccesskey~」が表示されればインストール完了です。

EntryRevision プラグイン
Movable Type でブログ記事のリビジョン番号を出力する、EntryRevision プラグインを公開します。このプラグインはMT5以降のバージョンで動作します。
1.機能
このプラグインは、ブログ記事のリビジョン番号を出力するMTEntryRevisionファンクションタグを提供します。
2.プラグインのダウンロード
GithubのEntryRevision プラグインのページより、Download をクリックして、プラグインアーカイブをダウンロードします。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある EntryRevision フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「EntryRevision~」が表示されればインストール完了です。

4.テンプレートタグの使い方
MTEntryRevisionタグは、MTEntriesタグ内部で次のように利用します。
<mt:Entries>
ブログ記事「<mt:EntryTitle>」のリビジョンは<mt:EntryRevision>です。<br />
</mt:Entries>
この例では次のように出力されます。

リビジョン関係の調査をしていて思いつきで作りました。うまく動作しなかったらすいません。
SettingExporter プラグイン
Movable Type(MT)5 でウェブサイト/ブログの設定をテーマにエクスポートする「SettingExporterプラグイン」を公開します。
1.機能
Movable Type 5.02 時点でのエクスポート機能では、ウェブサイト/ブログの設定をエクスポートすることができません(インポートは可能ですがtheme.yamlを編集する必要あり)。
このプラグインは、ウェブサイト/ブログの設定をテーマにエクスポートします。もちろんエクスポートした設定を編集なしでインポートすることもできます。

2.プラグインのダウンロード
github のSettingExporter プラグインのページに移動します。
「Download Source」のリンクをクリックして、プラグインアーカイブをダウンロードします。

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

4.利用方法
ウェブサイト/ブログの設定をエクスポートしたい、ウェブサイトまたはブログの「ツール」→「テーマのエクスポート」をクリックすると、「ウェブサイト・ブログの設定」のチェックボックスが表示されます。

「詳細」をクリックすれば、オプション画面からエクスポートする設定項目を選択できます。
5.注意事項
プラグインの都合上、エクスポートのオプション設定時、他のエクスポータのように、チェックした状態では表示されません。
また、一部の項目が正常に反映されていないことを確認しています。
- 全般 - 優先アーカイブタイプ
- 投稿 - 表示される記事数
- コミュニケーション - URLのnofollow指定
- Webサービス - ウェブサイト更新pingサービス通知
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タグなどで作成したものであれば、エクスポートは不要かもしれません。
PagePublishControllerプラグイン
Movable Type(MT)でウェブページの出力を抑止する「PagePublishControllerプラグイン」を公開します。
MTQでの、CSS HappyLifeの平澤さんのコメントが発端です。
ウェブページ(エントリーでも良いですが)を使ってサイトのトップページに「特別なお知らせ」として表示させたりするような場合に、ウェブページのテンプレートを別で普通に使っていると、本来ならばページとして不要な「特別なお知らせ」のページも生成されてしまいます。 そのページに特にリンクさせる訳ではないので、あまり閲覧される訳では有りませんが、状況によっては検索時にヒットしてしまったり、不要なhtml が生成されるのは美しくないので、htmlファイル自体を生成しないオプションみたいなモノが有ると嬉しいなーと思っています。
1.機能
このプラグインは、ウェブページのスタティックパブリッシングをページ単位に抑止します。下の画面のチェックボックスをチェックしておけば、ウェブページの保存時やアーカイブの再構築時に出力を抑止します。

「お知らせ」などで、ウェブページの本文のみをメインページなどに表示するために利用し、ウェブページ自体を出力したくない場合に便利です。
このプラグインは、Movable Type 4.x / 5.x で動作します。
2.プラグインのダウンロード
下記の PagePublishController_0_01.zip をクリックして、プラグインアーカイブをダウンロードします。
2010.06.23 初版
2010.06.25 v0.02 ブログ記事編集画面に表示される不具合を対処
3.プラグインのインストール
プラグインアーカイブを展開し、中にある PagePublishController フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
管理画面にアクセスするとアップグレードが開始するので、「アップグレード開始」をクリックします。
サインインします。
これでアップグレード完了です。「Movable Typeに戻る」をクリックすれば管理画面に戻ります。
システム管理画面のプラグイン一覧で、「PagePublishController~」が表示されればインストール完了です。

4.利用方法
冒頭の画面のように、ウェブページ作成・編集画面の右側に「ページを出力しない」というチェックボックスが表示されます。チェックすればウェブページは出力されません。
5.注意事項
複数のウェブページアーカイブがある場合、一律出力されません。ダイナミックパブリッシングには対応していません。一度出力したウェブページを削除する機能はないため、誤って出力した場合は一旦下書きに戻して、チェックボックスをチェックした状態で再度公開してください。
ウェブページへのリンクを生成しない機能は用意していません。したがって、MTPagesタグなどでウェブページへのリンクを作成したくない場合は、プライベートタグなどを用いてリンクを生成しないようにしてください。
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~」をクリックし、メッセージを設定して「変更を保存」をクリックします。

IndexFileNameプラグイン
再構築中のインデックステンプレートのファイル名を出力するIndexFileNameプラグインを公開します。インデックステンプレートのファイル名で処理を振り分けたい場合に便利です。
1.機能
MTIndexFileNameファンクションタグを提供します。インデックステンプレートにこのテンプレートタグを記述すると、再構築時にそのインデックステンプレートのファイル名を出力します。他のテンプレートに記述しても何も出力しませんが、例えばインデックステンプレートからインクルードしているテンプレートモジュール内の処理を振り分けたいときにも使えます(詳細は後述)。
後で考えると、このプラグインでなくてもやりたいことは実現できたのですが、何かの役に立つかもしれないので公開します。
2.プラグインのダウンロード
下記の IndexFileName_0_01.zip をクリックして、プラグインアーカイブをダウンロードします。
2010.06.01 初版
3.プラグインのインストール
プラグインアーカイブを展開し、中にある IndexFileName フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「IndexFileName~」が表示されればインストール完了です。

4.利用方法
テンプレートモジュール側で判定したい場合は、MTIncludeタグのモディファイアを利用して、値を引き継ぎます。
インデックステンプレート(foo.html)
<mt:IndexFileName setvar="index_file_name" />
<mt:Include module="bar" index_file_name="$index_file_name" />
テンプレートモジュール(bar)
<mt:if name="index_file_name" eq="foo.html">
…中略…
</mt:if>
CharsetEncoder プラグイン
Movable Type 5(MT5)で、指定した文字エンコーディング(文字コード)のページを出力する「CharsetEncoderプラグイン」を公開します。
1.機能
本プラグインでは、管理画面の文字コードはデフォルトのUTF-8のままとし、ウェブサイトまたはブログで出力するページのみ、指定した文字エンコーディングで出力します。ウェブサイト/ブログ別、あるいはテンプレート別に文字エンコーディングを指定することができます。携帯サイトとPCサイトで文字コードを変更したい場合に便利です。
指定した文字エンコーディングは、出力ページの次の部分にも反映します。
- meta要素のcontent属性の文字エンコーディング指定
- XML宣言の文字エンコーディング指定
Movable Typeの文字エンコーディングは本来、環境変数PublishCharsetで変更することができます。PublishCharsetで変更した場合、管理画面と、ウェブサイト/ブログから出力されるすべてのページが、指定した文字エンコーディングになります。
2.プラグインのダウンロード
下記の CharsetEncoder_x_xx.zip をクリックして、プラグインアーカイブをダウンロードします。
2010.05.25 初版
2010.05.28 v0.02 XML宣言に対応
2010.06.22 v0.03 UTF-8で運用しているブログに対してエラーログが出力される不具合を対処
2010.07.08 v0.04 form要素のaccept-charset属性値がプラグインで指定する文字エンコーディングに書き換わる不具合を対処
2010.10.21 v0.05 テンプレート単位での文字エンコーディング指定が可能(by oscarさん)
2010.10.22 v0.10 アーカイブテンプレートで文字エンコーディング指定ができない不具合を修正/プラグイン設定画面のユーザビリティを改善
2010.10.26 v0.11 PageButeプラグインとの連携に対応
2010.12.03 v0.12 CP932エンコードを追加
プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある CharsetEncoder フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「CharsetEncoder~」が表示されればインストール完了です。

4.文字エンコーディングの指定
文字エンコーディングを指定するには、ブログ管理画面の「ツール」→「プラグイン」→「CharsetEncoder~」をクリックし、以下の設定を行ない「変更を保存」をクリックします。
- 文字エンコーディング変更:このウェブサイト/ブログで文字エンコーディング変更を行う・行わないを選択します。
- 文字エンコーディング指定:文字エンコーディング変更を行う場合、指定単位を選択します。
- ウェブサイト/ブログの文字エンコーディング:ウェブサイト/ブログ全体で文字エンコーディングの変更を行う場合、ここで文字エンコーディングを選択します。
文字エンコーディングをテンプレート単位で行う場合、インデックステンプレート/アーカイブテンプレート編集画面に文字エンコーディング設定項目が表示されるので、そこで設定してください。
インデックステンプレート編集画面

アーカイブテンプレート編集画面

注:文字エンコーディングを変更して出力したページに、検索フォームやコメントフォームがある場合は次項の注意事項を必ず参照してください。
5.JavaScript(mt.js)の文字エンコーディング設定
コメント投稿フォームを利用するページの文字エンコーディングを変更した場合、コメント投稿フォームで文字化けが発生します。
ブログ記事ページを「EUC-JP」にした場合のコメント投稿フォーム
![]()
これはコメントフォームの文字を表示しているJavaScript(mt.js)の文字エンコーディングがUTF-8のままだからです。
このような場合、インデックステンプレートのJavaScript(mt.js)の文字エンコーディングを、ブログ記事アーカイブ/ウェブページアーカイブの文字エンコーディングに合わせれば解消します。
修正後のコメント投稿フォーム

PC用のページと携帯用のページなど、異なる文字エンコーディングのページからmt.jsを利用したい場合は、mt.jsの内容をコピーして、mt.jsと異なるファイル名+異なる文字エンコーディングでインデックステンプレートを作成し、そちらをインクルードするようにしてください。
6.コメントフォーム/検索フォームの文字エンコーディング設定
コメント投稿フォームや検索フォームを利用するページの文字エンコーディングを変更した場合、そのまま投稿や検索を行うと、フォーム送信時に「不正な要求です。文字コードUTF-8に含まれない文字データを送信しています。」というエラーが発生します。

この不具合を解消するには、form要素にaccept-charset属性を設定してください。属性値には「UTF-8」を設定します。これでフォームの内容がUTF-8にエンコードされます。IE6など一部のブラウザではaccept-charset属性が効かない場合があるので注意してください。
<form accept-charset="UTF-8" ...>
2010.08.06
概要の記述を一部変更しました。
2010.10.22
テンプレート単位の設定に関する記述を追加し、5項を追加。また、6項のエラーメッセージをテキストで追加しました。
CustomFieldExtensionTags プラグイン
Movable Type のカスタムフィールドの拡張テンプレートタグを提供する「CustomFieldExtensionTags プラグイン」を公開します。
1.機能
このプラグインでは次のファンクションタグを提供します。これらのタグはMTXXCustomFieldsタグブロック内で有効です。
- MTCustomFieldTag:カスタムフィールドのテンプレートタグ
- MTCustomFieldOptions:カスタムフィールドのオプション
- MTCustomFieldID:カスタムフィールドID
- MTCustomFieldDefault:カスタムフィールドのデフォルト値
- MTCustomFieldType:カスタムフィールドの種類
- MTCustomFieldObjectType:カスタムフィールドのシステムオブジェクト
- MTCustomFieldBlogID:カスタムフィールドのブログID
正直、まったくたいしたことのないプラグインです。
2.プラグインのダウンロード
GithubのCustomFieldExtensionTagsプラグインのページにある「ダウンロード」をクリックして、プラグインアーカイブをダウンロードします。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある CustomFieldExtensionTags フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。
システム管理画面のプラグイン一覧で、「CustomFieldExtensionTags~」が表示されればインストール完了です。




