新・元地方の中規模印刷会社で苦悩する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

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

  関連記事

ワードプレス(WordPress)で公開ディレクトリを変える方法 #wp

いつの間にやら「プロット・ファクトリー」でなく「つぶくま」になってしまったワード …

アイキャッチ画像のない記事にまとめてアイキャッチ画像が入れられる「Auto Post Thumbnail」【WordPressプラグイン】

今回もブログ移転に関する記事です。 ブログでもっとも重要なのは確かにテキスト(文 …

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

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

WordPress(ワードプレス)で記事途中にアドセンス(adsense)広告を貼る方法

実は、アドセンス(adsense)広告で一番クリック率が高いのは記事途中の広告で …

WordPressを軽量化(高速化)するために行う3つの方策

最近は、そこかしこでCMSと言えばワードプレス(WordPress)と行った感じ …

no image
ワードプレス(WordPress)でコンテンツをデザインする方法 #wp

トップページができたら引き続き各コンテンツページをデザインする方法です。 コンテ …

WordPressの記事(投稿・固定ページ)ごとのパスワード保護はセキュリティの強いサーバーでは動かない

WordPressには記事ごとにパスワードを掛けることのできる便利な機能がありま …

ワードプレス(WordPress)にRSSを読み込ませる方法 #wp

ワードプレスにはRSSを読み込ませるための機能が用意されていて、 それを使うと比 …

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

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

WordPress(ワードプレス)のURL表記をHTML表記にする方法 #wp

牛歩戦術でゆっくりと進んでいるプロット・ファクトリーWebサイトのワードプレス( …