概要
軽い気持ちでWordPressアドレスを変えてしまったところ(上画像の/wordpress
を消してしまった)、
変更後のURLにアクセスしてもダッシュボードにアクセスできなくなってしまった。。
対処
その1 wp-config.phpで設定を上書きする
設定ファイルwordpress/wp-config.php
に下記を追加。
define('WP_SITEURL', 'http://dev.hoge.com/wordpress');
※注意
/* 編集が必要なのはここまでです ! WordPress でのパブリッシングをお楽しみください。 */
より上に追加すること。
ただし...
これをすると、ダッシュボードからはWordPressアドレスを変更できなくなっちゃいます。
あまりよろしくない。
その2 wp_optionsテーブルの中身を修正する
どうやらWordPressアドレスはWordPress用のデータベースのwp_options
テーブルで管理されているらしい。
編集ツールを使うのも面倒なので、直接コマンドで編集しちゃいます。
1. WordPressのサーバーから、MySQLにアクセス
$ mysql -u root -p
Enter password:
**2. WordPress用のデータベースに接続**
mysql> use データベース名
補足: WordPress用のデータベースはwp-config.php
で設定したもの。
/** WordPress のためのデータベース名 */
define( 'DB_NAME', 'データベース名' );
**3. テーブルを確認**
mysql> show tables;
+-----------------------+
| Tables_in_hoge |
+-----------------------+
| wp_commentmeta |
| wp_comments |
| wp_links |
| wp_options |
| wp_postmeta |
| wp_posts |
| wp_term_relationships |
| wp_term_taxonomy |
| wp_termmeta |
| wp_terms |
| wp_usermeta |
| wp_users |
+-----------------------+
12 rows in set (0.00 sec)
ちゃんとwp_options
がありますね。
4. WordPressアドレスを確認
WordPressアドレスはsiteurl
として管理されているらしい。
mysql> select option_name,option_value from wp_options where option_name = "siteurl";
+-------------+------------------------+
| option_name | option_value |
+-------------+------------------------+
| siteurl | http://dev.hoge.com |
+-------------+------------------------+
1 row in set (0.00 sec)
ありましたね。URLも変更してしまった後のものです。
5. テーブルを更新
set option_value = "変更したいURL"
とし、テーブルの内容を更新します。
mysql> update wp_options set option_value = "http://dev.hoge.com/wordpress" where option_name = "siteurl";
**6. 変更を確認**
mysql> select option_name,option_value from wp_options where option_name = "siteurl";
+-------------+----------------------------------+
| option_name | option_value |
+-------------+----------------------------------+
| siteurl | http://dev.hoge.com/wordpress |
+-------------+----------------------------------+
1 row in set (0.00 sec)
ちゃんと変更されています。
ダッシュボードにもアクセスでき、変更も反映されていることが確認できます。
まとめ
wp_optionsテーブルの中身を更新することで、無事にWordPressの設定を変更前に戻すことができました。
テーブルの中身をいじるので更新する際はくれぐれも慎重に。