harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

トラブルシュート メモ

wordpressメモ、サイトのURLを変更する際のテーブル操作

投稿日:2014年5月21日

職場でイントラ用に利用しているwordpressサイトを別サーバーに引っ越した際、サイトURLのメンテを忘れてしまい、後から手動で直すことに。

直す必要があるのは”WordPress アドレス”に該当するフィールド”home”とサイトアドレスに該当する”siteurl”と思われるので、この二つを探してみることに。

テーブルの数がデフォルト状態で少なかったので、ちょっと手間をかけて各テーブルのフィールドを色々調べてみたところ
wp_optionsテーブル内のoption_nameフィールドにあるカラムにhomeを発見。

mysql> select * from wp_options where option_name='home';
+-----------+-------------+----------------------------------------+----------+
| option_id | option_name | option_value                           | autoload |
+-----------+-------------+----------------------------------------+----------+
|        37 | home        | http://intranet.example.com/wordpress  | yes      |
+-----------+-------------+----------------------------------------+----------+
1 row in set (0.00 sec)

あわせてsiteurlも調べてみたら、同様に発見。

mysql> select * from wp_options where option_name='siteurl';
+-----------+-------------+----------------------------------------+----------+
| option_id | option_name | option_value                           | autoload |
+-----------+-------------+----------------------------------------+----------+
|         1 | siteurl     | http://intranet.example.com/wordpress  | yes      |
+-----------+-------------+----------------------------------------+----------+
1 row in set (0.00 sec)

option_idの値がなぜかhomeよりsiteurlのほうが若いが、siteurlは1、homeは37で決まっている様子?あるいはバージョンにより変わるのか、暇なときにでも調べてみる。

ひとまずこの二つを直せばいけそうなので、そのままupdateをかましてみる。
update分を実行するときのwhere句での指定は、option_nameでなくoption_idで該当のIDを指定。

修正例としては
http://intranet.example.com/wordpress

http://intranet.example.jp/wordpress
で。

1.homeの設定値を手直し

mysql> update wp_options
    -> set option_value='http://intranet.example.jp/wordpress'
    -> where option_id=37;
Query OK, 1 row affected (0.07 sec)
Rows matched: 1  Changed: 1  Warnings: 0
 
mysql> select * from wp_options where option_id=37;
+-----------+-------------+---------------------------------------+----------+
| option_id | option_name | option_value                          | autoload |
+-----------+-------------+---------------------------------------+----------+
|        37 | home        | http://intranet.example.jp/wordpress  | yes      |
+-----------+-------------+---------------------------------------+----------+
1 row in set (0.00 sec)
		
mysql>

2.siteurlの設定値を手直し

mysql> update wp_options
    -> set option_value='http://intranet.example.jp/wordpress'
    -> where option_id=1;
Query OK, 1 row affected (0.06 sec)
Rows matched: 1  Changed: 1  Warnings: 0
 
mysql> select * from wp_options where option_id=1;
+-----------+-------------+---------------------------------------+----------+
| option_id | option_name | option_value                          | autoload |
+-----------+-------------+---------------------------------------+----------+
|         1 | siteurl     | http://intranet.example.jp/wordpress  | yes      |
+-----------+-------------+---------------------------------------+----------+
1 row in set (0.00 sec)
	
mysql>

と、ここまで直した後で
WordPress Codexに解説があるのを発見…初めからここを見ればよかったorz

-WordPress Codex : Changing The Site URL
http://codex.wordpress.org/Changing_The_Site_URL

とりあえず作業の進め方は問題なかった様子なのと、サイトのリンクの更新も確認できたので、ひとまずOK。

備考

間に合わせとして、wp-config.php内に設定値を固定で指定することもできる様子。

 define('WP_HOME','http://intranet.example.jp');
 define('WP_SITEURL','http://intranet.example.jp');

ただし、この対応だと、いかにも場当たり的な対処になるので、あまりやるべきではないかな、と。
wp-config.phpを見れば判るからこちらのほうが良い、という人もいるかもだけどw

-トラブルシュート, メモ
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

no image

[juniper] SRX(JunOS) ルーティング不具合修正(非対称ルートへの対応)

SSGシリーズからSRX220にリプレイスを行った際に、VPNを経由したリモートオフィスとのLAN通信がうまくいかない事象が起きたので、トラブルシュート。 ・社内LANにおいてゲートウェイが複数ある …

no image

snmpwalk利用時のtip/MIB出力時にOIDを見たいとき

※ホントにただのメモ。 MIB出力時にOIDを見たいときは、 オプション”-On”を付ける。 1.通常のsnmpwalk実行時 実行例 # snmpwalk -v 1 -c p …

no image

超久々にmuninをインストール

新規システムを作ったので、それに合わせてかれこれ5~6年ぶり位にmuninのインストールを。 サーバーはCentOS6.*。 1)rrdtoolのアップデート デフォルトリポジトリ(base)のrrd …

no image

ただのメモ:yumdownloaderでパッケージだけダウンロード

RedHat,CentOS yumリポジトリからパッケージをダウンロードだけしたいが 該当のパッケージがすでにインストール済みの場合、”yum install –downloa …

no image

script​/標準入力の判定(case文)

ホスト名を標準入力にて引数として追加し、ホストグループを判定する勉強用スクリプト。 ホスト名の先頭にweb、db、app、mailがあった場合はホストグループとサーバールートを出力、 ホスト名が対象外 …