WordPress 3.0 プラグイン管理画面の「追加機能」

WordPress 3.0 プラグイン管理画面WordPress 3.0 RC1 日本語版もリリースされ、いよいよ WordPress 3.0 正式版の公開も近づいてきました。
WordPress 3.0 RC1 をインストールして試している方も多いと思いますが、ダッシュボードのプラグイン管理画面に「追加機能ドロップイン(Drop-ins)」という項目が追加されたのにお気づきでしょうか?
ここには、Drop-ins と呼ばれる特殊なプラグイン( Drop-ins are advanced plugins )がインストールされている場合に表示されます。

この Drop-ins は、wp-content ディレクトリに、決まった名前の php ファイルを保存することによって有効にすることができます。
例えば、db-error.php という名前の php ファイルを、wp-content ディレクトリに保存しておくと、WordPress のデータベースエラーページをカスタマイズすることができます。
これらの Drop-ins は WP 2.9.x 以前にも存在していたのですが、設定しても管理画面には表示されませんでした。

WordPress 3.0 からの新機能というわけでは無いですが、以前からあった機能が可視化されるようになりました。
通常のプラグインのように管理画面から簡単にインストールできる機能ではありませんが、こうして管理画面に表示するようになったということは、次回以降のバージョンアップで簡単に利用できるようにするつもりなのかもしれません。

では、この Drop-ins として設定できる特殊な php ファイルを簡単に説明しましょう。
WordPress 3.0 RC1 の時点では、以下で説明する php ファイルですべてになります。
他の名前で保存しても Drop-ins としては認識されませんので注意しましょう。
また Drop-ins によっては、ファイルを保存するだけでなく、wp-config.php で定数を定義してやらないと、動作しないものもあります。

WordPress 本体の機能を拡張

これらの Drop-ins では、WordPress にキャッシュ機構を追加したり、インストール画面を変更したりすることができます。

db.php

カスタムデータベースクラス。

このファイルは、プラグイン独自のデータベースクラスを定義するために使用します。
例えば、DB Cache Reloaded プラグインのようなデータベースへのクエリをキャッシュするプラグインですとか、WordPress のデータベースとして MySQL の代わりに SQLite を使うプラグインなどを作成する時に使用できるでしょう。
DB Cache Reloaded については、以前にエントリしているので、そちらもご参照ください。

DB Cache Reloaded : dogmap.jp

advanced-cache.php

高度なキャッシュプラグイン。

このファイルは、wp-content ディレクトリに保存しただけでは動作しません。
wp-config.phpdefine('WP_CACHE', true); という記述を追加する必要があります。
WP Super Cache プラグインのような、WordPress の出力を静的ファイルにキャッシュするプラグインで使用されます。

object-cache.php

外部オブジェクトキャッシュ。

このファイルは、wp-content ディレクトリに保存しただけでは動作しません。
wp-config.phpdefine(ENABLE_CACHE, true); という記述を追加する必要があります。
このファイルが存在すると、オブジェクトキャッシュ機能が有効になります。
例えば memcached にオブジェクトキャッシュを取るプラグインなどが有ります。
この object-cache.php を利用して、Tokyo Cabinet にオブジェクトキャッシュを取るための手順を過去にエントリしていますので、そちらもご参照ください。

WordPress Object Cache のバックエンドに Tokyo Cabinet を利用する : dogmap.jp

install.php

インストールスクリプトを直す。

このファイルは wp-admin/includes/upgrade.php が読み込まれる際、事前に require され、WordPress をインストールする際の挙動を変更することができます。
具体的には、以下の WordPress のコア関数をプラガブルファンクションのように処理し、独自に書いた関数と置換することが可能です。

  • wp_install()
  • wp_install_defaults()
  • wp_new_blog_notification()
  • wp_upgrade()

この Drop-ins を定義することによって、独自に拡張されたインストール画面を用意することができるようになります。

メッセージ画面を変更する

これらの Drop-ins では、DB接続エラーやメンテナンス時に表示するメッセージ画面を変更することができます。

db-error.php

データベースエラー時のカスタムメッセージ。

データベースエラーが発生した際に表示されるエラーメッセージを、デフォルトの簡素なメッセージ画面ではなく、カスタマイズされたメッセージ画面を表示させることができます。
以前、詳細をエントリしていますので、そちらをご参照ください。

WordPress のデータベースエラーページをカスタマイズ : dogmap.jp

maintenance.php

メンテナンス中のカスタムメッセージ。

WordPress 本体やプラグインのアップグレード中に表示されるメッセージをカスタマイズできます。
以前、詳細をエントリしていますので、そちらをご参照ください。

WordPress のメンテナンスページをカスタマイズ : dogmap.jp

マルチサイト版用

WordPress 3.0 で追加されるマルチサイト管理機能を有効にしている場合のみ、使用することができる Drop-ins もあります。
未確認ですが、現行の WordPress MU でも使用できる機能かもしれません。

sunrise.php

マルチサイトが読み込まれる前に実行されます。

このファイルは、wp-content ディレクトリに保存しただけでは動作しません。
wp-config.phpdefine(SUNRISE, true); という記述を追加する必要があります。

このファイルは wp-includes/ms-settings.php の冒頭で読み込まれます。
マルチサイト版の WordPress 3.0 が動作する前の特殊な初期処理を記述することができます。

blog-deleted.php

サイト削除時のカスタムメッセージ。

WordPress で管理しているサイトを削除した際のメッセージをカスタマイズできます。

blog-inactive.php

サイト停止中の際のカスタムメッセージ。

WordPress で管理しているサイトを停止状態にしている際のメッセージをカスタマイズできます。

blog-suspended.php

ブログ強制停止時の際のカスタムメッセージ。

WordPress で管理しているサイトが矯正停止状態になっている際のメッセージをカスタマイズできます。

WordPress 3.0 プラグイン管理画面の「追加機能」」への4件のフィードバック

  1. ピンバック: WordPress テスト用のページを3.0にアップデート | ocnihsアプリ開発日記

  2. ピンバック: WordPress 3.0にアップグレードがなにやら大変だった — 病的溺愛シンドローム

  3. ピンバック: 2010/06/23に気になったこと | debeso

  4. ピンバック: Bookmarks of This Week (5/30-6/6) - Sometime PHP

コメントを残す

メールアドレスが公開されることはありません。