【WordPress】テーマのディレクトリの場所(階層)を変更する
※本ページのリンクにはプロモーションが含まれています。
こんにちは、Ryohei(@ityryohei)です!
本記事では、WordPressでテーマのディレクトリ階層(サーバー上の保存場所)を変更する方法をご紹介しています。
テーマのディレクトリをWordPressの外に移動したいんだけど、良い方法ないかな?
上記の疑問にお答えします。
では、解説していきます。結論
WordPressでは、テーマはwp-content
の中に含める必要があります。そのため、テーマのディレクトリ階層を変更したい場合はwp-content
の配下のファイルをすべて移動する必要があります。
wp-contentの直下には、下記のようなディレクトリとファイルが設置されています。
wp-content ├ languages ├ plugins ├ themes ├ upgrade └ index.php
テーマのディレクトリ階層を変更する場合は、これらの配置場所も変更する必要があるので、ご注意ください。
※別ディレクトリのテーマを追加する方法もあります。プラグイン等でテーマを追加する場合は下記をご検討ください。
wp-contentのディレクトリを変更する
実際にwp-content
のディレクトリを変更してみます。WordPress本体と同じ階層にwp-conent
を移動します。ディレクトリ名も任意に指定することができるので、ここではwp-content
をcontent
というディレクトリ名にリネームしています。
ディレクトリ構造(移動後)
html ├ content(wp-contentをリネーム) │ ├ languages │ ├ plugins │ ├ themes │ ├ upgrade │ └ index.php └ wp ├ wp-admin ├ wp-includes ├ wp-config.php └ ...etc
ディレクトリの移動とリネームが完了しましたら、WordPress本体の直下にあるwp-config.php
に下記を追記します。WP_DEBUG
の下辺りに追記いただければと思います。
wp-config.php
//content(旧wp-content)のフルパス define('WP_CONTENT_DIR', '/example/path/to/www/html/content'); //contentを配置したURL define('WP_CONTENT_URL', 'https://' . $_SERVER['SERVER_NAME'] . '/content'); define('WP_PLUGIN_DIR', WP_CONTENT_DIR . '/plugins'); define('WPMU_PLUGIN_DIR', WP_CONTENT_DIR . '/plugins'); define('WP_PLUGIN_URL', WP_CONTENT_URL . '/plugins'); define('WPMU_PLUGIN_URL', WP_CONTENT_URL . '/plugins'); define('PLUGINDIR', WP_CONTENT_URL . '/plugins');
追記したwp-config.php
を反映し、ページを再読み込みするとwp-content
のディレクトリ階層が変更されていることがご確認いただけます。
本記事では、要所を抜粋して解説しておりますが、より詳しい内容につきましては下記のドキュメントを参考にしていただければと思います。
最後に
WordPressは世界中で絶大なシェアを誇るオープンソースのCMSです。導入しているサイトが多いため、その分悪意を持って攻撃するクラッカーの標的となりやすいのも事実です。
wp-config.phpを非公開ディレクトリに設置したり、ログインにBasic認証を設けたり、パスワードの他にリキャプチャを導入したりできることはあると思いますので、ぜひ調査しながら実施してみてくださいね。
以上、WordPressでテーマのディレクトリの場所(階層)を変更する方法のご紹介でした!