新・元地方の中規模印刷会社で苦悩するWebデザイナー改めWebディレクターの日記

自由な20代、窮屈な30代を経て、遂に40代になっちまったWebディレクター&パソコン講師の覚書と思う言(こと)。略称【ちほちゅう】

*

ワードプレス(WordPress)でリンクURLを一気に検索置換、プラグイン「Search Regex」がすばらしい

      2014/11/20

  • このエントリーをはてなブックマークに追加

ブログを「livedoor Blog(ライブドアブログ)」から「WordPress(ワードプレス)」にインポートした話はしましたね。
□ 「livedoor Blog(ライブドアブログ)」から「WordPress(ワードプレス)」へ全記事をインポートする方法【ブログのお引越し】 | ちほちゅう
これがうまくいってさらに、リダイレクトの設定もしたおかげで新ブログへも人が来るようになりました。
□ ライブドアブログ(livedoor Blog)からワードプレス(WordPress)へのブログ移転でリダイレクトをさせる方法 | ちほちゅう

ただですね。
これでもまだ問題があるんです。
それは、ブログの記事内のリンクです。

悩んでる女性【素材】まだ何かあんの?

スポンサーリンク
 

ブログ内のリンクが旧ブログのリンクになったままということです。
具体的には「http://webdirector.livedoor.biz/archives/00000000.html」という表記になっている。

たとえば当ブログで一番PVを集めた「電源ボタンのマークの秘密」のURLが、
旧ブログだと「http://webdirector.livedoor.biz/archives/51611777.html」なのですが、
これが新ブログでは「http://chihochu.jp/51611777/」とならなければならないところ、
インポートした記事に関しては「http://webdirector.livedoor.biz/archives/51611777.html」のままになっているんですよね。

特にヒットページ紹介のページはかなり内部リンク使ってますのでこれが結構、多いんです。
一つ一つ直してくのも大変だし。どうしたものか。。

そんなときに便利なプラグインが「Search Regex」です。

□ WordPress › Search Regex « WordPress Plugins

これは、データベースの中から文字列を検索してさらに置換までしてくれるプラグインです。
対象となるテーブル(コメントや記事等、ブログのどの部分のデータか)も選べますし、何より正規表現が使えるのがいい。

正規表現ってのがちょっとわかりにくいかもしれませんが、簡単に説明すると、正規表現を使うと以下の様なことができるようになります。

一般の文字列検索置換ですと、
「http://webdirector.livedoor.biz/archives/51611777.html」→検索置換→「http://chihochu.jp/51611777/」
はできるのはわかりますよね?

ただし、これだと「http://webdirector.livedoor.biz/archives/51611777.html」しか置換できません。

だったら「http://webdirector.livedoor.biz/archives/」→検索置換→「http://chihochu.jp/」とした後、
「.html」→検索置換→「/」とやればいいのではないか?

でもこれだと、別のサイトへのリンクに付いている「.html」も全部「/」に置換してしまってとんでもないことになってしまいます。

そこで、正規表現を使うとそういうことなんです。
具体的な書き方は後で説明するとして、まずは「Search Regex」のインストールと使い方から説明しようと思います。

  1. インストールはいつもどおりです。「プラグイン」メニューから「新規追加」を選んで「Search Regex」を検索、「いますぐインストール」をクリック。
  2. インストールはが済むと、「ツール」メニューに「Search Regex」という項目が追加されますので、さっそく選んでみましょう。
    SearchRegex01
  3. 事は全てこの画面で済ませます。
    以下、それぞれの項目の説明です。
    SearchRegex02① ここでデータベースのテーブルを指定します。通常の投稿が対象であれば「Post content」でOKです。
    ② 検索パターンを設定します。「文字列」、もしくは「正規表現」になります。つまり、ここで入力した文字が検索されるということです。
    ③ 置換パターンを設定します。同様に「文字列」、もしくは「正規表現」いなります。ここで入力した文字に置換されるということです。
    ④ 「Regex」にチェックを入れることで正規表現がつかえるようになります。チェックを入れないと一般の文字列検索です。
    ⑤ ここでは検索結果に表示させる件数を指定できます。検索置換を行う場合は無視され、全データを対象にするようです。
    ⑥ 上記検索パターンで「検索」します。
    ⑦ 上記検索パターン及び置換パターンで検索置換をプレビューできます。
    ⑧ 上記検索パターン及び置換パターンで検索置換を実行します。
    と言った感じの事が可能となっています。
  4. 実際、検索した見た結果が以下。ズラズラと検索結果が出てきます。
    SearchRegex03
  5. で、実際「http://webdirector.livedoor.biz/archives/00000000.html」を一気に「http://chihochu.jp/00000000/」に置換するにはどう書けばいいかというと。
    SearchRegex04とりあえず表記だけ。
    検索パターン #http://webdirector.livedoor.biz/archives/(........).html#
    置換パターン http://chihochu.jp/$1/

    具体的にどうなっているのか知りたい方は以下のサイト等を参考にしてみてください。
    ()カッコで囲んだ部分が$1になるっていうのだけは覚えておいたほうがいいかもしれないです。
    □ サルにもわかる正規表現入門
  6. で、これを使って「Replace & Save」をクリックしたところ以下の様なエラー表示になってしまう。
    SearchRegex05これ、メモリーが足りないというエラーみたいです。
    つまり、件数が多すぎて処理しきれない。
  7. そこでかんがえたのは、10分割して検索、置換させる方法です。
    具体的には、
    SearchRegex06まずはこんなかんじに末尾が任意の数字(この場合は「8」)だけの記事を検索置換させます。
    ただし、このとき「$1」が「$18」とかになっちゃったのでちょっとだけ工夫して、まずは「8」を「####8」に検索置換させています。
  8. で、それをもう一度検索置換して直す。
    SearchRegex07これを「0~9」まで繰り返し行うことでメモリエラーなく、全記事内の「http://webdirector.livedoor.biz/archives/00000000.html」を「http://chihochu.jp/00000000/」に置換することができました。

まあ、そんなツール(プラグイン)が「Search Regex」です。
つまり、これを使えば画像のリンク先なども一気に変更することが可能となるわけです。

いずれにしてもWordPressには常に入れておきたい開発系プラグインの一つですね。
開発系なんで使った後は停止しておきましょう。

 - CMS, WordPress , , , , ,

アドセンス広告メイン

Message

メールアドレスが公開されることはありません。

  関連記事

カスタムフィールドとカスタム投稿で記事投稿フォームを使いやすく 2 – 「Custom Post Type UI」の巻 【ワードプレス】 #wp

1. Custom Field GUI Utility | 2. Custom …

カスタムフィールドとカスタム投稿で記事投稿フォームを使いやすく 3 – テンプレート編集の巻 【ワードプレス】 #wp

1. Custom Field GUI Utility | 2. Custom …

カスタムフィールドとカスタム投稿で記事投稿フォームを使いやすく 1 – 「Custom Field GUI Utility」の巻 【ワードプレス】 #wp

1. Custom Field GUI Utility | 2. Custom …

WordPress(ワードプレス)でテンプレートにテンプレートを読み込む方法(インクルードタグ) #wp

WordPress(ワードプレス)でテーマ内テンプレートを編集する際に便利なのが …

さくらのレンタルサーバー+ラピッドSSLを使ってWordPressをSSL化するときの注意点

さくらインターネットで非常に安くSSLが使えるのをご存知でしょうか? なんと、1 …

WordPress(ワードプレス)のリンク切れチェックに「Broken Link Checker」 #wp

表立っての活躍は見せなくても、縁の下の力持ちなWordPress(ワードプレス) …

WordPressでテーマカスタマイズ、ヘッダー(header.php)、フッター(footer.php)で消してはいけないプログラム #wp

自分でカスタマイズしたWordPressのテーマにライトボックスを導入しようと考 …

独自ドメインのWORDPRESS(ワードプレス)ブログを半日で作る方法(後編)

移転後すぐ前編を書いていながら後編は随分開いてしまいました。 そんなもんですすみ …

「WP File Cache」が原因で起きたトラブル対応で「WP File Cache」を削除して起きたトラブルは「WP File Cache」を再インストールで解決【WordPress】

なんか、このところタイトル長くてすみません。 一連の騒動がなんとか解決したのでま …

知らぬ間にPHPがバージョンアップ。PHP5.6からいきなりPHP7になっていた

これ? いつからだったんでしょうか? 仕事であるWordPressの環境を自分の …