ワードプレスでプラグインフォルダの絶対パス(サーバー上のローカルディレクトリ構造)とURL(ブラウザーで誰でもアクセスできるアドレス)を取得する方法を解説いたします。


ワードプレスのプラグインフォルダの絶対パスを取得する

プラグインの絶対パスを取得するコードは下記のようになります。

$plugin_dir = WP_PLUGIN_DIR . '/任意のプラグインのフォルダ名';

WP_PLUGIN_DIRはワードプレスが初期化される際に、定義してくれるサーバー上の現在のサイトのプラグインフォルダまでのパスです。
WP_PLUGIN_DIRには下記のようなサーバー上のプラグインフォルダまでの絶対パスが含まれます。

/home/ユーザー名/www/public_html/wp-content/plugins/

こちらを使えば、任意のプラグインフォルダのファイルをincludeやrequire onceなどで読み込んで利用できます。

ワードプレスのプラグインフォルダのURLを取得する

次にブラウザーで誰でも読み込めるインターネット上のプラグインフォルダのURLを取得するコードは下記となります。

$plugin_dirURL = plugin_dir_url();

$plugin_dirURLには下記のような文字列が代入されます。

https://wp-doctor.jp/wp-content/plugins

plugin_dir_url()は組み込み関数で、プラグインフォルダのURLを取得します。

上記はすべてのプラグインが入っているフォルダのURLを参照します。
あなたのプラグイン中のPHPコードから実行される場合に、あなたのプラグインフォルダのURLを取得するには下記のようにします。

$my_plugin_dirURL = plugin_dir_url(__FILE__);

__FILE__とはPHPプログラムの特殊な関数で、PHP実行時に、そのphpファイルの絶対パスに置き換えられるものです。
つまりこのファイルが/var/www/wp-content/plugins/myplugin/aaa.phpという絶対パスにあるのであれば、

plugin_dir_url(__FILE__)は、
plugin_dir_url(‘/var/www/wp-content/plugins/myplugin/aaa.php’)

と同じ意味になります。
このようにplugin_dir_url関数は、ローカルの絶対パスを入れるとそのファイルが含まれるプラグインディレクトリのURLに変換してくれる関数です。

WordPress ワードプレスのテーマやプラグイン修正・カスタマイズ・エラー修正のご依頼・ご相談はWPドクターまでお気軽にお送ください