Help us understand the problem. What is going on with this article?

[WordPress + MySQL] DBからサイトURLを変更

More than 3 years have passed since last update.

概要

管理画面からURLを間違って設定してログインできなくなった時や、既存のサイトをコピーして別サイトを立ち上げる時、データベースからURLを修正・変更することができます。
※記事内にサイトアドレスが含まれている場合は別途、データ変更が必要になるかもしれません。

※コメントをいただいたので追記

wp-config.phpでURL変更できるようですが、管理画面の一般設定からURLの変更ができなくなる(変更が効かない?)ようです。検証していないので推測になりますが、管理画面のURL設定はDBでデータを持っていて、config.phpでURLを設定した場合にconfigを優先して設定を読み込むからかもしれません。

https://wpdocs.osdn.jp/%E3%82%B5%E3%82%A4%E3%83%88_URL_%E3%81%AE%E5%A4%89%E6%9B%B4
これは最適な方法とは言えないかもしれません。サイトの値を決め打ちしているだけです。この方法を使うと、サイトの一般設定ページで値を変更することはできなくなります。

環境(筆者が実施した)

  • WordPress 3.9.9
  • MySQL 5.6

他バージョンで実施する場合は適せん読み替えしてください。

手順

WordPressアドレスとサイトアドレスを同じURLに変更します。

  • WordPressアドレスとサイトアドレスを確認

パラメータ名からして、
- WordPressアドレス→home
- サイトアドレス→siteurl
と思いますが未確認です。それぞれ別のURLを設定する場合はsiteurlだけ設定してログインできるか確認してみてください。

SELECT * FROM wp_options WHERE option_name IN ('home','siteurl');
  • WordPressアドレスとサイトアドレスを変更
UPDATE wp_options SET option_value = 'http://example.com' where option_name IN ('home','siteurl');
  • 変更されたか確認
SELECT * FROM wp_options WHERE option_name IN ('home','siteurl');
  • WordPressの管理画面にログインして「一般設定」からURLが変更されたか確認
    • WordPress アドレス (URL)
    • サイトアドレス (URL)

あとがき

仕様なんでしょうが、URLをDBに設定している意味があまり感じられません。
管理画面のURL変更してログインできなくなるというのはメンテナンス性が悪いので、E●−CUBEみたいにconfig用PHPで設定できるようにして欲しいです。

コメントをいただいたので追記

wp-config.phpでもURLを設定できるようですが、管理画面からのURL変更ができなくなるなどデメリットが発生します。それを考えたらURL変更はDBでやる必要がありますね。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away