ドメイン&WordPressを含むサイトの引越しでの、URL変更作業:『DATABASE SEARCH AND REPLACE SCRIPT IN PHP』を使って

LINEで送る
Pocket

最近サーバー移転をして、その時々に起こった問題や注意点を記事にしてましたが301リダイレクトの記述方法URLの正規化など)、終わったと思っても次から次へと問題というか、やらなきゃいけないこと(いけなかったこと)がでてきます。

以前『サーバー移転の手順 1, 2, 3と書いたのですが、その時はドメインの変更はしない引っ越しでしたので少し手順は簡単でした。が、今回はドメイン変更も、そしてWordPressの移転も伴っているので、いちいち旧URLから新URLに置き換えないといけません。全部置き換えれた!と思ってもまた気がつけば見つかる。。といった感じですので、ドメイン&WordPressを含むサイトの引越しでしなければいけない、URL変更の場所、方法等を記載していきます。

URL変更の場所

被リンクの変更や、Twitter等、SNSにリンクさせてる場合は、それぞれたくさんしないといけないと思いますが『引越しするサイト』の中身は、基本的には以下の2箇所で良いと思います。

  • バックアップしたデータファイル
  • データベース(phpMyAdmin)内のデータファイル

この2箇所は『301リダイレクトの記述方法』の手順3と5の前に行います。

バックアップしたデータ(ファイル)のURL変更

手順3の『FTPソフト等で、バックアップしたデータ(ファイル)を移行(コピー)します。』の前には、FTPソフト等で 旧URLから新URLに置き換えておきます。

この作業をしていなかったので、引っ越し後にリンクエラーの通知がちょくちょくきて気がついたのですが、まずはこれ、基本ですよね。完全に忘れていました。。必ずやってくださいね。

phpMyAdminでのURL変更

次に、手順5の『phpMyAdminにもバックアップしたデータ(データベース)の移行(import)をします。』で、phpMyAdminから引っ越したデータベースを選択して、以下のような記述でクリエを実行しました。(次に記載する方法でまとめてできますので必須ではないです。)

UPDATE wp_options SET option_value = replace(option_value, 'http://OLD.jp/', 'http://NEW.com/') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://OLD.jp/','http://NEW.com/');
UPDATE wp_posts SET post_content = replace(post_content, 'http://OLD.jp/', 'http://NEW.com/');
UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://OLD.jp/','http://NEW.com/');

これで一応エラーなく上手く稼働しているものですが(トラブルがまだでてないだけかも?)、検索してみるとまだ数千個の旧URLが残っています。
ですのでこちらの『DATABASE SEARCH AND REPLACE SCRIPT IN PHP』のスクリプトを使った方法をご紹介します。

『DATABASE SEARCH AND REPLACE SCRIPT IN PHP』を使ったURLの変更方法

MySQLのドメインの書き換えは、phpMyAdminから一括で変更可能なようですが、この方法では移転先WordPressで不具合(ウィジェットが表示されない等)が生じるようです。ですが、この『DATABASE SEARCH AND REPLACE SCRIPT IN PHP』を使えばそのような問題が起こることなく簡単に変更できるようですので、その方法を以下に記載していきます。

  1. まずは『DATABASE SEARCH AND REPLACE SCRIPT IN PHP』をダウンロードします。(Versionは 2 でも 3 でも大丈夫でしたが、動く方をDLしてください。)
    DATABASE SEARCH AND REPLACE SCRIPT IN PHPの使い方1
  2. フォルダをリネイムします。(セキュリティのためのようです。)
    URL変更
  3. FTPソフト等で、以下のフォルダがある同階層にアップロードします。
    (root directoryには置いてはいけないようです。また、階層を間違えるとエラーで動きません。)
    /your-secret-search-replace-folder
    /wp-admin
    /wp-content
    /wp-includes
    DATABASE SEARCH AND REPLACE SCRIPT IN PHPの使い方2
    ちなみに、階層を間違えておくと、以下のようなメッセージが現れます。

    The script encountered an error while running an AJAX request.
    If you are using your hosts file to map a domain try browsing via the IP address directly. If you are still running into problems we recommend trying the CLI script bundled with this package. See the README for details.

  4. ブラウザで『http://newアドレス/URL-henkou(リネイムした任意の名前)/』にアクセスします。
    DATABASE SEARCH AND REPLACE SCRIPT IN PHPの使い方3
  5. 置き替えたいOldドメイン→Newドメイン(http://はなし)を入力します。
  6. actionの『live run』を押します。
    (ちなみに『dry run』はお試しのようなもので実際には変更されません。ですので書き換え後の確認等に使用することもできます。)
  7. 無事置き換わっていたら、あとはこのスクリプトを削除します。

以上で終了です!無事終了すると、このようなメッセージが現れます。
succeed
なんと親切なスクリプトなんでしょうね。これを最初から知っていれば、最初のクリエを実行することもなく、簡単に置き換えれいたのに。。
ま、これも勉強!ということで、また一つ賢くなりました。



関連記事

画像やテキストを中央(上下左右真ん中)に配置する方法


普通にtext-align:center;や、margin:0 auto;等でテキストや写真を真ん中に配置したつもりでも…

記事を読む▷


WP-OGPの設定方法:WPの投稿記事のサムネイルをFBできちんと表示させる


この記事は前回からの続きなのですが、、、実は1年経ってます。。下書きを途中まで書いてたのですが、あまりにも大変で途中で終…

記事を読む▷


アイキャッチ_RSSImport

WordPress:プラグイン”RSSImport”を使って気になるサイト等の最新情報を表示させる方法


前回はRSSのボタンを自分のサイトに表示させる方法を書いたのですが、今回は自分のサイト以外(勿論自分のものもOK!)の気…

記事を読む▷


お名前.com から脱出する!:ドメインの移管方法


『お名前.com』でドメイン取得してからは、『Whois情報公開代行』の件(詳細はこちら)で大変な思いをしたのですが、そ…

記事を読む▷


WPで全ページ見れなくなった時

WordPressの記事がトップページ以外、全部見れなくなった時の対処方法(404 error)


年末にサーバーの移転を進めていたのですが、以前に何度かサーバーの移転やWordpressの引っ越し等々していたので、大変…

記事を読む▷


no image

テキスト、画像を選択できなくする方法


facebookで『続きを読みたかったらいいねを教えてね!』みたいな記事がよくありますが、必ずそういう記事に限ってコピペ…

記事を読む▷


サーバー移転の手順 その3:移転後のトラブル


前回、前々回と書きましたが、サーバーの移転、少々、いや、かなりやいこしいです。できたあとは疲れ果てて『もーできたしえーわ…

記事を読む▷


スマホ、携帯からタップ(クリック)で電話を発信する、htmlの記述方法 コピペでOK!!


スマホ等のタブレット、また携帯で、電話番号をタップ(クリック)して直接かけるhtmlの記述方法です。 …

記事を読む▷


Thumbnail_Icon_firefox_bug

Firefoxでなぜか消える、Tableのborder対策、cssのみでの解決法


Firefoxでなぜか消えてしまうTableのborder、いつもじゃなく、たまになのでこれがやっかい。。原因がわからな…

記事を読む▷


2017最新版:SNS等の公式ロゴ(アイコン)素材のまとめ(Facebook, Instagram, Youtube, Twitter, Line etc.)


一度サイトを作ってしまうとなかなか更新せず使い回してしまうのが、この『SNSのロゴ(アイコン)』だと思うのですが、サイト…

記事を読む▷


Message

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

参考にさせていただいてるサイト

Error: Feed has an error or is not valid

PAGE TOP