技術資料

mt-rebuild.plを使ってMovable Typeの再構築を自動化する方法

作成日:2010.07.03

Movable Typeの再構築を定期的に自動で行いたい方向け。mt-rebuild.plスクリプトを使って、cronで定期実行する設定方法と、再構築を行うモードやオプションの使い方を解説します。

error この記事は最終更新日から14年以上が経過しています。

以前紹介したRebuildQueueプラグインは、自分で手動で再構築のトリガーを起動すると、その後はバックグラウンドで再構築を行ってくれる、という仕組みでした。

今回紹介する mt-rebuild.pl は、それとはまたちょっと違って、cron 等で定期的に起動することで、そのままバックグラウンドで再構築処理を行ってくれるスクリプトです。

mt-rebuild.pl の設置

mt-rebuild.pl の配布元はこちら

上記ページから mt-rebuild.pl をダウンロードして(TypeKeyでログインする必要があります)ください。

ダウンロードした mt-rebuild.pl を、Movable Type をインストールしているディレクトリにアップロードし、パーミッションを変更して実行権限を与えます(非技術者のためのパーミッションについての解説参照)。

cron の設定

mt-rebuild.pl を設置したら、cron で定期的に mt-rebuild.pl を実行するよう設定します。
crontabの設定方法参照。

例えば、毎日午前4時に全再構築を行うなら、以下のような感じ。

0 4 * * * /usr/local/bin/perl /path/to/mt/mt-rebuild.pl -mode="all" blog_id=1

「/path/to/mt/」の部分はもちろんMTをインストールしているディレクトリへのパスを指定して下さい。

mt-rebuild.pl のオプションについて

mt-rebuild.pl は、オプションを指定して実行することで、様々な条件で特定のテンプレートのみ再構築できます。

mode オプション

mode オプションで、再構築のモードを指定できます。

-mode="all"
全再構築。
-mode="archive"
アーカイブのみ再構築。後述の archive_type オプションと併用
-mode="entry"
ブログ記事のみ再構築。後述の entry_id オプションと併用
-mode="index"
インデックステンプレートのみ再構築。後述の template オプションと併用

blog_id オプション

blog_id オプションで、再構築を行うブログを指定して再構築できます。

-blog_id=1
ブログID1のブログのみ再構築。

archive_type オプション

archive_type オプションで、再構築を行うアーカイブの種類を指定できます。

-archive_type="Individual"
ブログ記事アーカイブのみ再構築。
-archive_type="Daily"
日別アーカイブのみ再構築。
-archive_type="Weekly"
週別アーカイブのみ再構築。
-archive_type="Monthly"
月別アーカイブのみ再構築。
-archive_type="Category"
カテゴリアーカイブのみ再構築。

entry_id オプション

entry_id オプションで、再構築を行うブログ記事を指定することができます。

-entry_id=1
エントリID1のブログ記事のみ再構築。

template オプション

template オプションで、指定したテンプレートのみを再構築することができます。
自分でつけてテンプレート名もそのまま指定することができます。

-template="メインページ"
「メインページ」というテンプレートのみ再構築。
-template="携帯用メインページ"
「携帯用メインページ」というテンプレートのみ再構築。

他にも、mt-rebuild.pl のソースを見れば、いくつかオプションがあるのがわかるかと思いますので、随時調べて使ってみれば良いかと。

この記事を書いた人

※上が私です。

奈良市を拠点に、25年以上の経験を持つフリーランスWebエンジニア、阿部辰也です。

これまで、ECサイトのバックエンド開発や業務効率化システム、公共施設の予約システムなど、多彩なプロジェクトを手がけ、企業様や制作会社様のパートナーとして信頼を築いてまいりました。

【制作会社・企業様向けサポート】
  • 専任エンジニアのいない企業様に対するシステム面の不安を解消
  • 柔軟な契約形態や短納期での対応により、急なニーズにも迅速にサポート
  • システムの企画段階から運用まで、ワンストップでのサービスを提供

Webシステムの開発やサイト改善でお困りの際は、どうぞお気軽にご相談ください。小さな疑問から大規模プロジェクトまで、最適なご提案を心を込めてさせていただきます。

ぜひ、プロフィールWeb制作会社様向け業務案内一般企業様向け業務案内もご覧くださいね。

Movable Typeプラグイン入門:MT::Author で実現するロール付与の手法

2025.03.26

本記事では、Movable Type のプラグイン開発において、MT::Author オブジェクトを利用したユーザーへのロール付与手法を詳しく解説します。具体的なコード例とともに、ユーザー、ブログ、ロールの各オブジェクトの取得方法や、add_role メソッドを活用したロール付与処理の流れを紹介。実務に直結する実装ポイントを分かりやすく解説しています。

Movable Type Perl

Movable Typeプラグイン入門:MT::Authorを活用した新規ユーザー作成の実例解説

2025.03.21

本記事では、Movable Typeプラグインの実装において、MT::Authorオブジェクトを活用したユーザーの新規作成処理の具体例を解説します。コードサンプルを通して、ユーザーの存在確認から新規作成、各種プロパティの設定手順やログ出力まで、実践的なポイントを詳述しています。

Movable Type Perl

Movable Typeプラグイン開発入門:第七回 Transformerプラグインで管理画面UIをカスタマイズする

2025.03.19

この記事では、Movable Type 管理画面の見た目を変更するために、Transformerプラグインで設定フォームをカスタマイズする方法を解説しています。具体的な文字列置換の実装例と、実運用時に考慮すべきポイントをわかりやすくまとめています。

Movable Type Perl

Movable Typeプラグイン開発入門:第六回 ローカライゼーションの実装方法

2025.03.13

第六回では、Movable Typeプラグインのローカライゼーションに焦点を当て、多言語対応の具体的な手法を紹介します。多言語対応の実装方法を学び、プラグインの利用者層を広げましょう。

Movable Type Perl

阿部辰也へのお仕事の依頼・お問い合わせ

軽いご相談もお気軽にどうぞ!

個人情報の取り扱いについて *必須 プライバシーポリシーをご確認いただき、同意いただける場合は「同意する」にチェックをしてください。

keyboard_double_arrow_up
TOP