search_replace_db_master_001

記事の概要

この記事では、WordPressのデータベースの検索・置換ができるツールである「Search Replace DB master」を紹介します。

「Search Replace DB master」とは?

正式名称は「DATABASE SEARCH AND REPLACE SCRIPT IN PHP」という名前のツールでWordPressのデータベースの検索・置換を行えるツールです。

「Search Regex」と違って記事のソースコードはもちろんのこと、ウィジェットやプラグインに関わるところまで検索・置換が行えるプラグインです。

「Search Replace DB master」の導入方法

手順1

以下のサイトにアクセスします。

手順2

記事中央にあるダウンロードリンクをクリックします。
search_replace_db_master_002

手順3

ダウンロードしたファイルを解凍します。
search_replace_db_master_003

手順4

FTPソフトを使用してサーバー上のWordPressのフォルダ内(”wp-admin”等があるフォルダ)にアップロードします。
search_replace_db_master_004

「Search Replace DB master」の使用方法

手順1

「Search Replace DB master」をアップロードしたフォルダにブラウザでアクセスします。
ドメインURLhttp://www.example.com/
WordPressのURLhttp://www.example.com/wordpress/
Search Replace DB masterのURLhttp://www.example.com/wordpress/Search Replace DB master/

手順2

”replace”に検索したい文字列、”with”に置換したい文字列を入力し、正規表現を使用する際は”use regex”にチェックを入れ、”dry run”をクリックします。クリックしても変更は行われないので安心してクリックしてください。
search_replace_db_master_005

手順3

検索結果が出力されるので”view changes”をクリックして変更内容を確認します。
search_replace_db_master_006

手順3

変更内容に納得した場合”live run”をクリックします。納得がいかなかった場合は検索・置換文字列を変更しましょう。
search_replace_db_master_007

手順4

警告が表示されます。置換を実行する場合OKをクリックします。
search_replace_db_master_008

手順5

5秒間の猶予が与えられたあと、実際に書き換えが始まります。書き換え終わるまでしばらくお待ち下さい。

手順6

使い終わったら”delete me”をクリックして削除しておきましょう。
search_replace_db_master_009

手順7

削除する際も警告が表示されます。削除する際はOKをクリックします。
search_replace_db_master_010

正規表現を使用する際にの注意点

ここでは「Search Replace DB master」で正規表現を使用する方法に特化して書きます。

基本的な正規表現については以下のサイトを参考に勉強してください。

サルにもわかる正規表現入門

PHPやjavascriptで正規表現を使う際は始点と終点を意味するデリミタというものを設定する必要があるのですが、今回はそのデミリタに”/”が採用されています。デリミタは特殊文字に採用されます。

つまり、今回は”/”も特殊文字扱いされるので”/”を検索する際は”\/”と入力する必要があります。

詳しくは以下のサイトが参考になるでしょう。

正規表現:デジットさんの生活便利サイト

「Search Replace DB master」で正規表現に対応しているのは検索側のみで、置換側は対応していないようです。

search_replace_db_master_011

例:”uploads/(年)/(月)/”を”uploads/picture/”に変更する場合

検索したい文字列uploads/(4桁の数字)/(2桁の数字)/
検索したい文字列の
通常の正規表現
uploads/\d\d\d\d/\d\d/
検索したい文字列の
今回入力すべき正規表現
uploads\/\d\d\d\d\/\d\d\/
置換したい文字列uploads/picture/

バックスラッシュ”\”とスラッシュ”/”の嵐で見辛いですね。正規表現に対応したテキストエディタを使って置換作業を行うことをおすすめします。

”.”は正規表現における特殊文字ですが、任意の1文字を表すものなのであえて"\."と入力する必要はありません。

例:任意のサブドメインを”www”に変更する場合

検索したい文字列http://(任意の英数字列).example.com/
検索したい文字列の
通常の正規表現
http://.*?.example.com
検索したい文字列の
今回入力すべき正規表現
http://.*?.example.com
置換したい文字列http://www.example.com

まとめ

この記事ではWordPressのデータベースの検索・置換ができるツールである「Search Replace DB master」を紹介しました。

記事のソースコードどころかプラグインやウィジェットのデータまで対応しています。非常に便利です。

ただし、削除しないと他者による改ざんを許しかねないので使い終わったらしっかりと削除しましょう。

かなりの箇所の文字列を修正することにもなるので「Broken Link Checker」を導入している場合はもう一度全リンクを確認すると良いでしょう。