Movable Type プラグイン
onagatani
2012年01月16日
おはようございます。本日も帯広はマイナス14度でちょー寒いonagataniです。
昨日は半年ぶりくらいに個人的にコードを書く気力が出たのでMTプラグイン書いてみました。
(今回は完全趣味な上に業務時間外で書いているのでサポート等は会社に投げないでくださいませ。質問はTwitter@onagatani)
できることは少なくてDropboxにMySQLDumpを保存するだけです。
何が嬉しいかというとクラウド上にデータを保存するだけでなくDropboxの機能でクライアントAppを入れたPC全てで
データを同期するので、サーバ機で破損等あった場合でもほぼ100%データが復元できる事です。
逆にまだ実装していない機能として、MTのコンテンツを複数サーバ間で同期する機能があります。
こちらはコンテンツをバックアップしつつ、lsyncの様な使い方ができそうなので鋭意作成中なので検証完了しましたら公開させて頂きます。
使い方
-
以下のCPANモジュールをインストールして下さいWebService::Dropbox、Time::Piece(例:curl -L http://cpanmin.us | perl - WebService::Dropbox Time::Piece)
-
Dropbox.plをMTのpluginsディレクトリに設置して下さい
-
Dropboxのアカウントを作成しこちらのページでアプリケーションの登録を行なって下さい(アプリケーション名等は自由に設定して下さい。アクセス権限はフルアクセスでもディレクトリ制限有りでも どちらでも問題ないはずです)
-
アプリケーション登録を行ったら AppKeyとAppSecretをMTに登録して下さい(システム->ツールメニュー->プラグイン->Dropbox->設定
-
Key、Secret登録が完了したシステム->ツールメニュー->dropbox authを押下して下さい。先ほど登録したDropboxアプリケーションへ認証を許可します。許可するとMTのダッシュボードへリダイレクトされます
-
4の設定画面でデータベースバックアップを保存ディレクトリを指定します。事前にDropboxにディレクトリを作成して下さい(例:mtbackup)
-
以上でrun-periodic-tasksが一日に一回MySQLDumpをDropbox上に保存する用になります。dumpファイルはgzipにて圧縮保存されます
設定項目(mt-configに記述する例です)
-
MySQLDumpPath /usr/bin/mysqldump
-
GZipPath /usr/bin/gzip
ダウンロード
Dropbox01.zip
ライセンス
-
個人での利用はご自由にお願いします。但し問題があっても責任はもてません。
-
企業での利用は何か問題があっても責任が取れないので事前にご連絡下さい。
注意
-
CentOS5.6のMySQLサーバでのみ動作確認をしております。WindowsやMySQL以外のデータベースでは現状動作しませんので注意して下さい。要望あればWindowsや他DBに対応しますので@onagataniまで連絡下さい。
-
保存されるファイルのローテーションは現状実装されていません。ご自身で定期的に削除して下さい
-
本番環境に設置する前に事前に検証環境での動作確認を行なって下さい
-
Dropboxにファイルをuploadするために/tmpを利用します。バックアップファイルが設置される空き容量が一時的に必要になります
方川
2011年10月25日
本日、以下のプラグインをアップデートいたしました。
セキュリティ問題の改修に加え、いくつかの機能改善、信頼性の向上を行っております。プラグインをご利用の方はお手数ですがアップデートをお願いいたします。プラグインのダウンロードは各プラグインページからお願いいたします。
ご利用中のお客様にご迷惑お掛けしたことを、深くお詫び申し上げます。
セキュリティアップデート
Movable Typeで管理している情報を、アプリケーション上の一部の操作において、遠隔の第三者により更新、変更される可能性があります。
本セキュリティアップデートは以下の問題を修正しています。
アップデートしたプラグイン一覧
各プラグインのアップデート内容は以下となります。
方川
2011年08月08日
アイテムのアップロード画面から、複数のファイルを一括でアップロードできるようにするMovable Typeプラグインを公開します。このプラグインを利用することで、アイテムを複数選択して一括でアップロードできるようになります。また画像の一括リサイズやアップロード幅の上限を決めて自動的にリサイズさせることも出来ますので、デジカメなどで撮った大きな写真をアップロードさせることを防ぐことが出来ます。

インストール
解凍して出来るpluginsディレクトリとmt-staticディレクトリをそのままMTの各ディレクトリに上書きしてください。
使い方

プラグインを導入すると、ウェブサイト/ブログのアイテムメニューの「新規」がMultiFileUploaderと置き換わります。ここで、参照をクリックしてファイルを複数選択してアップロードボタンを押すだけです。「ファイルを選択→アップロード→ファイルを選択→アップロード...」と何度も繰り返さなくても、複数のファイルを一括アップロードできるわけですね。アップロードと同時に、画像ファイルをリサイズしたり、タグを設定することができます。
新機能
-
各ウェブサイト・ブログのプラグイン設定画面から、画像のリサイズ時のサイズを標準で設定できるようになりました。固定値にして強制させることも可能です。
-
MT既存のアップロードのリンク「アイテム > 新規」や一覧の画面の「アイテムの作成」を複数ファイルのアップロード機能に置き換えます。後方互換として置き換えない場合のモードをシステムのプラグイン設定で切り替えることが可能です。
不具合修正・セキュリティ対応
ダウンロード
ダウンロード - バージョン0.45
その他
-
このプラグインはブログウェアです。どなたでも無償でご利用頂けますが、感想、要望などをあなたのブログで記事として紹介頂けると幸いです。
-
本プラグインをご利用される方は必ずプラグインご利用の際の注意事項をお読みください。
-
MT5.0で動作します(MT5.1には対応しておりません)
onagatani
2011年05月18日
北海道からこんにちわ。onagataniです。 さて以前にIndexRebuilderというプラグインを書いたのですが、少しバージョンアップしました。
-
Entry・WebPageも定期再構築の対象にしました
-
タスクの実行周期を15分にしました(さすがに1時間に1度はないかなと。。)
ということで、
是非新バージョンをお試しください。
使い方は基本的に変更ありませんが、WebPage or EntryのIDを入力できる用になっています。再構築はrun-periodic-tasksが15分に1度行ってくれます。
タスクの実行周期を修正したい場合もあるかと思いますが、現状IndexRebuilder自身では変更できません。MTに登録されている全てのタスクの周期を修正するプラグインも社内にありますので、公開されましたらこちらで設定変更頂ければと思います。こちらは別途公開されると思います(たぶん)。
ダウンロード
IndexRebuilder0.2
インストール
プラグインディレクトリにコピーしてください。
その他いろいろ
-
MT5で動作確認済みです
-
このプラグインはブログウェアです。無償でご利用頂けますが、感想、要望などをあなたのブログで記事として紹介頂けると幸いです。
-
個人利用または商用利用に関わらず無償でご利用いただけます。
-
無保証ですので、十分にテストしてから運用してください。
-
本プラグインをご利用される方は必ずプラグインご利用の際の注意事項をお読みください。
onagatani
2011年05月18日
なぜか一度書いた記事が全部消えて同じ記事を2回書いているonagataniです。 さて、皆さんMTでの開発で最終的な本番化をおこなう際に公開ドメイン名やパスが違うために困った事はありませんか?管理画面でもある程度は一括置換できますが記事内の画像のリンクなどで漏れがでてしまうかと思います。
ということで、直接データベースの全テーブル・全カラム(varchar型、text型のみ)に対して置換処理を行なうSQLReplaceプラグインを紹介します。
本プラグインを導入する事により、MovableTypeのデータ全てに対して置換処理を行なうことが可能になります(導入前にかならずデータベースのバックアップを取得して下さい。動作保証はありません)。
使い方はシステムのプラグインセッティングにて「置換前文字列,置換後の文字列」と書くだけです。あとはrun-periodic-tasksが置換処理を実行してくれます。複数置換したい文字列がある場合は、プラグインセッティングを一度初期化して再度置換文字列を保存して下さい。*なお置換処理は初期化しない限り一度しか実行さませんのでご安心下さい。
ダウンロード
SQLreplace0.1
インストール
プラグインディレクトリにコピーしてください。
その他いろいろ
-
MT5で動作確認済みです
-
このプラグインはブログウェアです。無償でご利用頂けますが、感想、要望などをあなたのブログで記事として紹介頂けると幸いです。
-
個人利用または商用利用に関わらず無償でご利用いただけます。
-
無保証ですので、十分にテストしてから運用してください。
-
本プラグインをご利用される方は必ずプラグインご利用の際の注意事項をお読みください。