サブディレクトリに配置したWordPressをルートURLで表示する方法

今日もスキマ時間を作ってスキマSTUDYしよう!

WordPressでは、サブディレクトリ「cms」にWordPressファイルを設置しても、サイトのルート(例えば https://sukima-study.com/)で表示することが出来る。
【設置】https://sukima-study.com/cms → 【表示】https://sukima-study.com/

※上記はサブディレクトリを「cms」にした例だけどディレクトリ名は好きなものでOK。

ドキュメントルートに、WordPress以外のファイルを置こうとすると、WordPressのファイルとそれ以外のファイルが混在してしまい管理がし難くなるよね。そんな時にサブディレクトリにWordPressを配置しながらルートURLで表示できるととても便利ってわけ!!

手順

サブディレクトリにWordPressをインストールしておく

WordPressのインストールは「スキマ時間にコツコツ勉強するワードプレス(インストール編)」を参考にしてね!

ドメインは「https://sukima-study.com/」サブディレクトリ「cms」にWordPressファイルを配置した例で話を進めるね。

WordPress管理画面の「設定>一般」を開いてみると以下画像のように、WordPressアドレスもサイトアドレスも同じ「https://sukima-study.com/cms」になっていることが確認できる。

サブディレクトリに配置したWordPressをルートURLで表示する方法

▲「サイトアドレス」の部分を「https://sukima-study.com」に書き換えて「変更を保存」ボタンをクリック。

サブディレクトリ「cms」のindex.phpと.htaccessファイルをルートディレクトリにコピー

FTPツールで、サブディレクトリ「cms」のindex.phpと.htaccessファイルを、一旦、ローカル(PC内)にダウンロードしてからルートディレクトリにアップするとコピーしたってことになるよね。

サブディレクトリに配置したWordPressをルートURLで表示する方法

※ファイルの移動ではなくコピーってところがミソ!サブディレクトリにもルートディレクトリにもindex.phpと.htaccessファイルが必要。

ルートディレクトリのindex.phpと.htaccessファイルを修正

▼index.phpの修正

【修正前】require( dirname( __FILE__ ) . ‘/wp-blog-header.php’ );
【修正後】require( dirname( __FILE__ ) . ‘cms/wp-blog-header.php’ );

※サブディレクトリ名「cms」を追記する。

サブディレクトリに配置したWordPressをルートURLで表示する方法

▼.htaccessファイルの修正

【修正前】「RewriteBase /cms/」
【修正後】「RewriteBase /」

【修正前】「RewriteRule . /cms/index.php [L]」
【修正後】「RewriteRule . /index.php [L]」

※サブディレクトリ名「cms」を削除する。

サブディレクトリに配置したWordPressをルートURLで表示する方法

パーマリンク設定の更新

WordPress管理画面にログインし「設定>パーマリンク設定」を開く。
特に何かを変更することはなく、「変更を保存」ボタンをクリックする。これでパーマリンク設定の更新となる。

サブディレクトリに配置したWordPressをルートURLで表示する方法

ルートURLでアクセス確認

「https://sukima-study.com/」のようなルートURLにアクセスし、サイトのトップページが表示されることを確認する。
なお、管理画面へログインする際には、サブディレクトリが付いた「https://sukima-study.com/cms/wp-login.php」となる。