WordPressをインストールしたサブディレクトリ名を変更する諸処〜

WordPressシステムをサーバーのルートディレクトリではなく、サブディレクトリにインストールすることはままあるコトだと思います。長年コンテンツを溜め込んで運用していたサイトのサーバーを引っ越したり、何らかの事情で別のサブディレクトリに移動(もしくは改名)することになった場合の備忘録です。まずWPファイル/データベースのバックアップを完了させてから作業に入ります。

1. 設定>一般>WordPress アドレス (URL) を書き換える

「WordPress アドレス (URL)」の部分を新しく収納するサブディレクトリ名で書き換えます。ただ場合によっては欄がグレーアウトして書き換えられなくなっている場合があります。wp-config.php に「define('WP_SITEURL', 'http://〇〇〇〇.com/xxxx');」の記載がある場合は、管理画面側で書き換えられないようになっています。この1行を削除/保存して管理画面で書き換えるか、そのままwp-config.phpのxxxx部分を直接書き換えます。プラグイン設定によっては、define項目に参照するサブディレクトリ名の記載があるモノもあるので、まとめて直接書き換えた方が余分な手間がかかりません。

2. 新しいサブディレクトリにWPファイルを移動(もしくは改名)

手間が掛からないのは「サブディレクトリを改名してしまう」ですが、ディレクトリ丸ごとコピーしたものに新しいサブディレクトリ名をつけた方が転ばぬ先の杖になります。

3. ルートディレクトリのIndex.phpを書き換える

WPシステムから移動させたIndex.phpの中にある「require( dirname( __FILE__ ) . '/xxxx/wp-blog-header.php' );」のxxxx部分を新しいサブディレクトリ名に書き換えます。基本的にこれで新しいサブディレクトリのWPが稼働してくれるはずです。

4. 新しいサブディレクトリのWPにログイン、リンクアドレスの修正

これまでの作業でWPシステムは立ち上がりますが...溜め込んだ記事中の画像等のリンクは、昔のままなのでちゃんと表示されません。記事数が少ない場合は、記事の再編集でリンクアドレスを修正すればいいですが、記事数が膨大である場合はいちいちやってられませんから、データベースの検索と置換機能を持った「Search Regex」を使って一気に修正してしまいましょう。

 

ここまでやればほとんどの場合はOK。ただしプラグインやウィジェット、テーマ固有のカスタマイズ機能等は、設定がリセットされていたり、個別のデータベース・ログファイルを参照して動いているモノもあるので、適時修正が必要な場合があります。