スポンサーリンク

【WordPress】plugin_dir_pathでプラグインのディレクトリが取得できない

アイキャッチ WordPress

WordPressでプラグインのパスを取得する方法についての覚え書きです。

スポンサーリンク

plugin_dir_path関数ではプラグインディレクトリは取得できない

その名前で混同しがちですが、plugin_dir_path()関数はプラグインのディレクトリを取得する関数ではありません。

$plugin_path = plugin_dir_path(__FILE__);
echo $plugin_path;

のように、ファイル名を指定してプラグインディレクトリを取得する例として紹介されることも多くありますが、例えばテーマディレクトリのfunctions.phpなどでこの記述を行うと、返ってくるのはfunctions.phpのパスになってしまいます。

実際、WordPressのソースコードでは、このplugin_dir_path関数は以下のように記述されており、単純に指定されたファイルの所在するディレクトリ名とスラッシュ文字を付加した文字列を返すような動作になっています。

function plugin_dir_path( $file ) {
    return trailingslashit( dirname( $file ) );
}

functions.phpによるテーマのカスタマイズなど、プラグインディレクトリ以外で情報を取得したい場合は、WP_PLUGIN_DIRの値が使えます。

$plugin_path = WP_PLUGIN_DIR.'/your-directory/';
echo $plugin_path;

その他のディレクトリ定数には以下のようなものがあります。

WP_CONTENT_DIR // コンテンツディレクトリまでのフルパス、末尾のスラッシュなし
WP_CONTENT_URL // コンテンツディレクトリまでのURL
WP_PLUGIN_DIR // プラグインディレクトリまでのフルパス、末尾のスラッシュなし
WP_PLUGIN_URL // プラグインディレクトリまでのURL

WordPress&Cocoonのお悩みにお答えします

クラベルではWordPressのブログサイト構築、Cocoonテーマの導入やカスタマイズに関するご相談を承っております。

お困りの方はぜひ一度お問い合わせください。また、現在ココナラをつかったサービス出品も始めてみました。お悩みおひとつの解決からお手軽にお申込みできますので、こちらもぜひあわせてご覧ください。

ワードプレス&コクーンのお悩み何でもお答えします 現役エンジニアによるWordPress&Cocoon制作支援
WordPress Web開発
お読みいただきありがとうございました。
最後に「いいね!」をいただけると大変励みになります。
最新情報をお届けします。
クラベルをフォローする
スポンサーリンク
この記事を書いた人
クラベル

Webサイト構築、Wordpressのカスタマイズやphpプログラミングなどやってます。ブログは省エネ運営中。Cocoonカスタマイズやゲーム、ガジェットの話題など。

クラベルをフォローする
クラベル

コメント

タイトルとURLをコピーしました