現在進行中のプロジェクトで強制的にプラグインを有効化する必要があったので、その方法をご紹介。
クライアントにWordPressを納品するときにとか俺様仕様のプラグインを使う時に便利ですよ。^^
mu-plugins ディレクトリを使っちゃおう!
これ、もともとマルチサイト用の機能で、昔のWordPress MUの時代からあったんですけど、WordPress3.3のシングルサイトでも動きました。^^
実際の方法は、wp-content/mu-pluginsというディレクトリを作って、そのなかにプラグインを放り込んでいくだけです。
すると、あら不思議。管理画面内のプラグインのページで、上の画像のように”必須”という項目が追加されます。
あとは、通常のプラグインとおなじように記述すればオッケーです。
注意点
.phpファイルはmu-plugins直下に置こう。
ただし、ほとんどのプラグインは、pluginsディレクトリ以下にサブディレクトリをつくって、そのなかのphpをWordPressが勝手に読み込んでくれるんですが、mu-plugins内のプラグインでは、phpファイルをmu-plugins直下に設置する必要があります。
そのため、パス構成が変わってしまうので既存のプラグインを使用する場合は、そのへんの修正を行う必要があります。
plugins_url() などの関数の戻り値は、mu-pluginsになって帰ってきますので、ほとんどの場合は、require(() とかのパスを変更するだけでいけると思います。
自動アップデートは動作しない?
あと、自動アップデートもたぶん動作しませんので、そのへんはご注意を。
いつか動かなくなっちゃうかも。
この機能は互換性維持のために残されてる機能なので、もしかしたら将来のバージョンではサポートされなくなるかもしれません。
