WordPressのサイトURLの設定変更方法―WP_SITEURLとWP_HOMなど
技術情報
WordPressのダッシュボード(管理画面)の一般設定にて、誤ってWordPressアドレス(URL)とサイトアドレス(URL)を変更してしまい、リダイレクトされてWordPressのダッシュボードに入れなくなったことはありませんか。そんな時は、wp-config.phpにWP_SITEURLとWP_HOMEという定数を定義することで、WordPressサイトURLの設定変更が行えます。
トップ >WordPressのサイトURLの設定変更方法
目次
この記事の目次です。
1. サイトURLの設定変更方法
2. wp-config.php(設定ファイル)で定数を定義する方法
3. wp-config.php(設定ファイル)とは
4. WP_HOMEとWP_SITEURLの記述方法
5. WordPressアドレス(URL)とは
6. サイトアドレス(URL)とは
7. リダイレクトループやNot Foundになってしまう場合
1. サイトURLの設定変更方法
WordPressのサイトURLの設定変更方法は、ダッシュボード(管理画面)から行う方法とwp-config.php(設定ファイル)で定数を定義する方法の2つがあります。
前者は、ダッシュボード(管理画面)「設定>一般設定」画面に「WordPress アドレス (URL)」と「サイトアドレス (URL)」という2つの欄があります。 これらは「ホーム」および「サイト URL」設定と呼ばれることがありますが、こちらを設定してサイトのベースとなるURLを変更する方法です。
サイトURLの設定は前者で行うのが一般てきですが、前者の設定をミスしてしまうと表示が崩れたり、ダッシュボードにログインできなくなったり、リダイレクトループに陥ることがあります。 その設定ミスの影響を回避に使えるのが後者の方法です。
なお、上記でサイトURLのベースを変更しても投稿内やテーマに記述したURLは変更されません。 1つ1つダッシュボードで訂正する、あるいはSearch Replace DBなどのツールを使ってデータベース中の古いURLを変更する必要があります。
以下では、後者のwp-config.php(設定ファイル)で定数を定義する方法について解説していきます。
2. wp-config.php(設定ファイル)で定数を定義する方法
wp-config.php(設定ファイル)で定数を定義する方法は、WordPressのホームディレクトリにあるwp-config.phpという設定ファイルにWP_HOMEとWP_SITEURLという定数を記述(定義)する方法です。
WordPressのファイル構成は以下です。場所が分からない場合は、WordPressの構成ファイルを頼りにどこにあるか確認してみてください。
ファイル・ディレクトリ | 説明 |
---|---|
/index.php | 通常アクセスの開始部分 |
/.htaccess | パーマネントリンク設定時に使用 |
/wp-config.php | 設定ファイル |
/wp-login.php | ログイン画面 |
/wp-admin/ | 管理画面用のファイル群 |
/wp-content/ | サイトのデータ格納場所 |
/wp-content/languages/ | 言語ファイル |
/wp-content/themes/ | テーマ格納場所 |
/wp-content/plugins/ | プラグイン格納場所 |
/wp-content/uploads/ | アップロードしたファイル格納場所 |
/wp-includes/ | ワードプレスのコアファイル |
3. wp-config.php(設定ファイル)とは
wp-config.php(設定ファイル)とは、WordPressをインストール後にWordPressのファイル類が設置されるディレクトリの直下に置かれたファイルで、データベースの接続先などを設定するファイルです。
4. WP_HOMEとWP_SITEURLの記述方法
WP_HOMEとWP_SITEURLの記述方法は以下です。
define( 'WP_HOME', 'WordPressアドレス(URL)' ); define( 'WP_SITEURL', 'サイトアドレス(URL)' );
記述する位置は、wp-config.php(設定ファイル)の下の方で大丈夫です。
5. WordPressアドレス(URL)とは
WP_HOMに記述するWordPressアドレス(URL)とは、WordPressのホームに位置するURLのことです。
WordPressは、URLのリライト(書き換え)機能を利用して、実際のURLと別のURLで表示することができます。 例えば、リライトしないと、トップページのURLがhttps://htaccess-support.com/wordpress/となる場合に、https://htaccess-support.com/で表示することができます。
この場合、https://htaccess-support.com/wordpress/がWP_HOME、https://htaccess-support.com/がWP_SITEURLになります。
6. サイトアドレス(URL)とは
もう説明しておりますが、WP_SITEURLに設定するサイトアドレス(URL)とは、WordPressのデフォルトのURLと変更したい場合に設定するURLのことです。 WordPressのデフォルトのURLと同じ場合は、WordPressのデフォルトのURLと同じURLを設定します。
7. リダイレクトループやNot Foundになってしまう場合
WP_HOMEとWP_SITEURLの設定を変更してもリダイレクトループやNot Foundになってしまう場合は、以下についても確認してみましょう。
index.phpの位置
例えば、WP_HOMEがhttps://htaccess-support.com/wordpress/、WP_SITEURLがhttps://htaccess-support.com/という設定の場合、index.phpをhttps://htaccess-support.com/index.phpとなる位置に配置する必要があります。 その場合のindex.phpの記述例は以下になります。
<?php define( 'WP_USE_THEMES', true ); require( dirname( __FILE__ ) . '/wordpress/wp-blog-header.php' );
.htaccessの記述
WordPressのURLのリライト(書き換え)には、.htaccessが使用されます。 こちらが正しく記述されていない場合、ページURLが正しくならず、Not Foundとなってしまいます。 トップページは表示されるのに、その他のページが表示されないとうのが代表的な症状です。
.htaccessの記述内容は、パーマリンクの設定画面を表示するとWordPressが自動編集します。 WordPressのダッシュボードにログインして、「設定>パーマリンク設定」の画面を表示してみてください。
WordPressが.htaccessを自動編集できない場合は、「設定>パーマリンク設定」の画面にエラーメッセージが表示されますので、そのメッセージの内容を訂正します。 レンタルサーバーでは、起きにくいですが、.htaccessのパーミッション設定が影響することが多いです。
データベースにあるURLやディレクトリパス
WordPressのデータベースにはURLだけでなくディレクトリパス情報も保存されています。 こちらに関連してサーバ移設などでWordPressのディレクトリのパスやドメインが変わる場合にトラブルが起きやすいです。 トラブルが解決しないようでしたら、データベースのダンプを吐き出して、そこにあるURLやディレクトリパスを確認して、Search Replace DBなどのツールを使ってデータベース中の古いURLやディレクトリパスのを訂正してみましょう。
更新履歴
更新履歴になります。
- 2020/7/4 記事をアップしました。
トップ >WordPressのサイトURLの設定変更方法