Movable Type プラグイン

定期的にインデックステンプレートを再構築するMovableTypeプラグイン:IndexRebuilder

onagatani 2011年04月20日

北海道からこんにちわ。onagataniです。 さて、MovableTypeでは再構築機能により高アクセスにも耐えられるサイトを簡単に構築できますが、マルチブログ機能を多様する事によりエントリーの投稿の度に多数のインデックステンプレートが再構築されてしまい 投稿が非常に重い処理になってしまう事が度々あります。

ということで、
インデックステンプレートを手動で再構築するのはめんどくさいけど、マルチブログで再構築すると重くなる!という場合に便利なIndexRebuilderプラグインを紹介します。

本プラグインを導入する事により、特定のインデックステンプレートを定期的に再構築する事が可能になります。
TOPページにニュースブログの最新記事一覧を載せる場合などに便利かと思います。
但し、TOPページへの反映は1時間に1度になりますので、急いで更新したい場合などには不向きです。

使い方は各Webサイトやブログのプラグインセッティングにて、再構築したいインデックステンプレートのIDをカンマ区切りで入力するだけです。再構築はrun-periodic-tasksが1時間に1度指定されたテンプレートを再構築してくれます。

ダウンロード

IndexRebuilder0.1

インストール

プラグインディレクトリにコピーしてください。

その他いろいろ

  • MT5で動作確認済みです
  • このプラグインはブログウェアです。無償でご利用頂けますが、感想、要望などをあなたのブログで記事として紹介頂けると幸いです。
  • 個人利用または商用利用に関わらず無償でご利用いただけます。
  • 無保証ですので、十分にテストしてから運用してください。
  • 本プラグインをご利用される方は必ずプラグインご利用の際の注意事項をお読みください。
投稿者 onagatani : 04/20

テーマのエクスポートができないときのプラグイン:FixThemeExport

logo2.gif やまかわ 2011年04月15日

MTのテーマエクスポート機能を使っていて以下のようなエラーに遭遇したことはありませんか?

theme_error.png


実はMTのテーマでは、theme.yaml でテンプレートファイルを「module/footer」のように指定すると、テーマの配置ディレクトリ内にもう一階層ディレクトリを設けてその下にテンプレートファイルを配置できるのですが、いざそのテーマを適用したブログからテーマをエクスポートしようとすると失敗する、という制限があります。知らずにこの制限に抵触すると、折角作り込んだテーマがエクスポートできず、がっくり来てしまいます。

これを回避する為に、ちょっとしたプラグインを作りました。このプラグインを利用すると、「module/footer」のような階層付きのテーマを適用したブログ/ウェブサイトからもテーマのエクスポートが可能になります。

プラグインのダウンロード

FixThemeExport-1.0.zip

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

pluginsディレクトリにFixThemeExportディレクトリをアップロードしてください。

プラグインの使い方

このプラグインが有効な場合、エクスポートが出来ないテーマが適用されているブログ/ウェブサイトで「テーマのエクスポート」画面を開くと「テーマのエクスポート」ボタンの代わりに「エクスポート用にテーマを修正」ボタンが表示されます。

 

fix_theme.png

このボタンを押すと、正しくテーマがエクスポートできるようにそのブログ/ウェブサイトのテンプレートデータが更新されますので、あとは通常通りテーマをエクスポートしてください。

 注意事項

  • MTの制限によりエクスポート時にテーマにディレクトリ階層を持たせられないため、「module/footer.mtml」ならば「module-footer.mtml」という名前にリネームしてエクスポートしています。
  • このプラグインはブログウェアです。どなたでも無償でご利用頂けますが、感想、要望などをあなたのブログで記事として紹介頂けると幸いです。
  • 本プラグインをご利用される方は必ず「プラグインご利用の際の注意事項」をお読みください
投稿者 やまかわ : 04/15

mt-searchなどに使える携帯用のタグを追加する:MobileAgentプラグイン

onagatani 2011年02月17日

 ひさしぶりにプラグインを書きましたながたにです。
ありそうでなかったHTTP::MobileAgentのラッパープラグインを作成しました。
mt-searchなどの動的生成を行なう場合のみ動作します。

以下のように携帯判定、UserID取得、キャリア判定などができます。
おまけでEncode::JP::Mobile用にcharsetを返す機能を付けてあります。

<MTMobileAgent>
<MTMobileAgentIfNonMobile>
PC
</MTMobileAgentIfNonMobile>
<MTMobileAgentIfVodafone>
vodafone
</MTMobileAgentIfVodafone>
<MTMobileAgentIfEzweb>
EZweb
</MTMobileAgentIfEzweb>
<MTMobileAgentIfDocomo>
DoCoMo
</MTMobileAgentIfDocomo>
<$MTMobileAgentEncoding$>
<$MTMobileAgentUserId$>
<$MTMobileAgentName$>
<$MTMobileAgentCarrier$>
</MTMobileAgent>

ダウンロード

MobileAgent0.1

インストール

プラグインディレクトリにコピーしてください。設定項目などはありません。
以下のCPANモジュールをインストールしてください。

  • String::CamelCase
  • Class::Inspector
  • HTTP::MobileAgent
  • HTTP::MobileAgent::Plugin::Charset

その他いろいろ

  • MT5で動作確認済みです
  • このプラグインはブログウェアです。無償でご利用頂けますが、感想、要望などをあなたのブログで記事として紹介頂けると幸いです。
  • 個人利用または商用利用に関わらず無償でご利用いただけます。
  • 無保証ですので、十分にテストしてから運用してください。
  • 本プラグインをご利用される方は必ずプラグインご利用の際の注意事項をお読みください。
投稿者 onagatani : 02/17

カスタムフィールドのシステム設定でアセットを利用できるようにするMovableTypeプラグイン:EnableAssetOverSystem

ぴろり上西 2011年02月17日

 システムレベルで追加されたカスタムフィールドは、そのシステムで管理しているウェブサイトやブログなどで共通に利用することができます。しかし、管理している全てのウェブサイトやブログの編集画面に、カスタムフィールドで「画像」フィールドを追加したいと思っても、システムレベルでは、アセット(画像、ファイル、オーディオ、ビデオ)を選択することができません。結局、全てのウェブサイトやブログごとに、一つ一つアセットのカスタムフィールドを追加しなくてはなりません。これは手間です。
 そこで、システムレベルのカスタムフィールド設定でも、アセットを追加可能にするプラグインを書いてみました。

ダウンロード

EnableAssetOverSystem 0.00_01

インストール

 プラグインディレクトリにコピーしてください。設定項目などはありません。

その他いろいろ

  • MT5で動作確認済みです
  • このプラグインはブログウェアです。無償でご利用頂けますが、感想、要望などをあなたのブログで記事として紹介頂けると幸いです。
  • 個人利用または商用利用に関わらず無償でご利用いただけます。
  • 無保証ですので、十分にテストしてから運用してください。
  • 本プラグインをご利用される方は必ずプラグインご利用の際の注意事項をお読みください。
投稿者 ぴろり上西 : 02/17

パスワードシステムを強化するMovableTypeプラグイン:BetterPassword

ぴろり上西 2011年02月02日

 前回の記事で、MovableType は入力されたパスワードの最初の 8 文字しか利用していないことが判明しました。まぁ、8 文字のパスワードであれば、英数大文字小文字、記号を織り交ぜて、そこそこ安全なパスワードを設定できますが、やはり、入力された文字列を全て使って認証を行って欲しいものです。
 そこで、MovableType のパスワード システムをジャック(?)して、入力された文字列全てを使って認証を行えるようにするプラグインを書いてみました。このプラグインを導入することで、パスワードに使える文字列の長さに制限がなくなります。パスワードよりも更に長く複雑なパスフレーズを利用することも可能になりますので、セキュリティ強度の向上にご利用ください。

注意

 このプラグインを導入すると、システム管理者を含む既存のユーザ全てがログインできなくなります。ダウンロードパッケージに同梱のシェルスクリプトを利用して、個別のユーザ毎にパスワードを再設定してください。しかし、既存の全ユーザに対してパスワードの再設定が必要になりますので、新規案件などのクリーンインストール状態から運用を始められるのがラクチンです。なお、中途で導入された場合、プラグイン導入以降に新規作成されるユーザについては、問題なく運用することができます。
 また、このプラグイン導入後は、プラグイン管理画面からこのプラグインを決して無効化しないでください。再び全てのユーザがログインできなくなり、パスワードの再設定を行わないといけません。

ダウンロード

BetterPassword.0.00_01.zip

インストール

 ダウンロードパッケージを展開して得られたファイルを plugins 以下にコピーしてください。プラグインの設定項目などはありません。plugins フォルダにコピーした瞬間から、パスワードシステムが上書きされますので、上記注意のようにログインができなくなります。

パスワードの再設定

 既存ユーザのパスワードを再設定するためのシェルスクリプトを同梱しています。シェルから、以下のようにコマンドを実行してください。

perl set-passwd username password

 username は存在するユーザのログインID、password は再設定するパスワードです。

その他いろいろ

  • crypt 関数の替わりに Digest::MD5 を利用しています
  • このプラグインはブログウェアです。無償でご利用頂けますが、感想、要望などをあなたのブログで記事として紹介頂けると幸いです。
  • 個人利用または商用利用に関わらず無償でご利用いただけます。
  • 無保証ですので、十分にテストしてから運用してください。
  • 本プラグインをご利用される方は必ずプラグインご利用の際の注意事項をお読みください。
  • MT5で動作確認済みです。
投稿者 ぴろり上西 : 02/02
お問い合わせはこちらから お電話でのお問い合わせ03-5475-5101

MTエンジニアブログ

MTCMS Smartキャンペーン!
承認フロー付きCMS「MTCMS Smart(98,000円)」をお買い上げの方、MTライセンス1本がタダに!

配布プラグイン一覧

MultiFileUploader
複数ファイルを一括でアップロードできるMovable Typeプラグイン
ParentalInclude
MT5でウェブサイトとブログのテンプレート連携を便利にするプラグイン
DuplicateEntry
ブログ記事を複製または移動するMovableTypeプラグイン
NotifyAnythingChanged
何かが起きたらメールで通知するMovableTypeプラグイン
rssEntry
取込んだRSSをエントリとして書き出すMovableTypeプラグイン
AutoTagging
面倒な記事のタグ付けを自動化する
FutureRebuild
日時を指定してページを再構築する
EntryImExporter
エントリをCSVに書出したり、CSVから一括登録するMovableTypeプラグイン
MailPack
Movable Typeで簡単携帯投稿!メール投稿プラグイン
DirectoryUtility
カテゴリ・フォルダの階層を表示したり、親フォルダを表示したり、何かと便利なプラグイン
CSVList
CSVデータを整形して表示する
PageBute
静的ページ用ページ分割プラグイン

注目記事

RSS

ページの先頭へ戻る