はる
wp-config.phpに『WP_PLUGIN_DIR』と『WP_PLUGIN_URL』の二つの定数を指定することで、変更できます!
【結論】プラグインのフォルダ場所を定数で変更
結論から言うと、2つの定数を指定することで変更できます。
例えば、wordpressのプラグインの場所を https://hoge.fuga/plugins/
に変更したい場合、wp-config.phpで下記を追記します。
define('WP_PLUGIN_DIR', __DIR__.'/plugins');
define('WP_PLUGIN_URL', 'https://' . $_SERVER['SERVER_NAME'] . '/plugins');
詳しい説明
それぞれは何を意味しているか
定数名 | 説明 | 例 |
---|---|---|
WP_PLUGIN_DIR | プラグインのフォルダの場所のパスを指定します。 | /www/html/plugins/ |
WP_PLUGIN_URL | プラグインにアクセスするときのURLを指定します。 | https://hoge.fuga/plugins |
私が使う場合の例
WordPressのセキュリティー向上のために、wordpressの本体をディレクトリのずらして用意する場合があります。
https://hoge.fuga
のサーバーのパスが/www/html/hoge.fuga/
の場合、
WordPressのファイルを /www/html/hoge.fuga/wp/
のようにする場合があります。
そうすることで、https://hoge.fuga/wp-login.php
にアクセスしてもログイン画面が見れず、https://hoge.fuga/wp/wp-login.php
にアクセスできるようになります。
このような処理をしていて、ソースを確認すると、pluginsのURLが https://hoge.fuga/wp/wp-content/plugins/〜
になっているので、プラグインの場所から https://hoge.fuga/wp/
にWordPressのファイルの場所が推測できてしまいます。
それを回避するのにこの設定を使います。
このような場合、
wp-config.php
は、/www/html/hoge.fuga/wp/wp-config.php
に、pluginsを/www/html/hoge.fuga/plugins/
に移動したい場合、下記のように設定することになります。
define('WP_PLUGIN_DIR', dirname(__DIR__).'/plugins');
define('WP_PLUGIN_URL', 'https://' . $_SERVER['SERVER_NAME'] . '/plugins');