2014/05/27

WordPressで複数の記事の文字列を一括置換したい時はSQLコマンドの出番だ!

スクリーンショット 2013 09 22 9月22日日648

こんにちは、ジュン@frapptです。

先日のブログ合宿で、BeginningNEWSというブログタイトルが全然ニッチじゃない!という指摘を@goryugoさんからいただきました。

 

「確かに、BeginningNEWSで検索したら出てくるけど、”Beginning NEWS”っていう感じに空白を入れると、メジャー過ぎる単語だから他に負けるんだよなぁ」と、自分のセンスの無さを受け止めるしかありませんでした。

 

ですがこのブログの場合、ブログタイトルを変える前に、手作業でやるとかなり手間のかかる作業があったんです。

 


こんにちは!BeginningNEWSのジュンです!

これは、僕が記事の冒頭に必ず入れている言葉です。MarsEditのショートカットで文字を登録しているので、毎回一緒です。BeginningNEWSにブログ名を変えた後の記事に、必ず入れているんです。

 

今回は、いずれブログ名が変わることを考えて、記事の冒頭部分の「BeginningNEWS」を消したいなと思いました。

大体200記事くらい編集する必要があった

調べたら、BeginningNEWSのジュンです!と挨拶している記事は200を越えてました。

どうすんのこれw全部手動でやるの?半日つぶれてしまうよ?(´・ω・`)

SQLコマンドで一瞬で解決!

WordPressの多くはMySQLという名前のデータベースサーバを使っています。そのMySQLで使えるコマンドがSQLコマンドというものです。

今回は、WordPressが使っているMySQLの中に保存されている記事の内容を、コマンドを使って書き換えたいと思います。

phpMyAdmin上でコマンドを実行する

本当はSSHでログインしてmysqlに入った方が楽なんです。しかし、レンタルサーバの中にはSSHログインに対応していないところも多数あるので、今回はphpMyAdminから操作することにしました。

phpMyAdminにログインする

レンタルサーバによってphpMyAdminの利用方法が違うと思いますが、ログインするとこの画面が出てきますね。

 

 

スクリーンショット 2013 09 22 9月22日日623

左側のWordPressのデータベースをクリックしましょう。

ここからまずは、WordPressが記事の本文を保存している場所を探していきます。

SQLの実行画面を表示する

スクリーンショット 2013 09 22 9月22日日709

データベースを選択した後、SQLタブをクリックします。

 

 

スクリーンショット 2013 09 22 9月22日日713

こんな感の入力画面が出てきます。

コマンドを入力して実行!

今回は、記事の冒頭部分の「BeginningNEWSの」を消したいので、文字列を置換するコマンドはこうなりました。

スクリーンショット 2013 09 22 9月22日日711


UPDATE `wp_posts` SET post_content=REPLACE (post_content,”こんにちは、BeginningNEWSの”,”

こんにちは、”)

※wp_postsがテーブルで、post_contentがフィールドです。よく分からない人は、wp_postsの中にpost_contentというのがあって、その中に全記事の本文が書かれている感じだと思ってください。

 

これで全ての記事から「こんにちは、BeginningNEWSの」を探し出し、「こんにちは、」に置換します。

実行結果

スクリーンショット 2013 09 22 9月22日日639

コマンドが無事に実行されると、変更された行数が表示されます。

 

おおう、268行もあったんか。手動で変えるとなるとかなりの手間やな(´・ω・`)

という気の遠くなるような作業が、0.0762秒で終わったわけですねヽ(=´▽`=)ノ

 

試しにブログを見てみると、

スクリーンショット 2013 09 22 9月22日日639 1

さっきまでこの状態だったのが、

スクリーンショット 2013 09 22 9月22日日640

「BeginningNEWSの」が取れている状態になるわけです(`・ω・´)ゞ

まとめ

コマンドは、確かに面倒くさいです。ある程度の知識や経験がないと打てません。 WordPressは、コマンドやサーバを意識しなくても使えるブログソフトウェアです。

 

しかし!コマンドが少しでも叩けると、今回みたいに見るだけで嫌になりそうな単純作業が一瞬で片付いてしまうんです!

 

マウスでクリックすること、コマンドを叩くことにそれぞれ良いところ悪いところがありますが、今回はSQL文の大活躍でした!興味がある方は試しにphpMyAdminなどでデータベースの中身を覗いてみてくださいヽ(=´▽`=)ノ

この記事が気に入ったら
いいね!しよう

Twitter で

コメント投稿

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

内容に問題なければ、下記の「コメント送信」ボタンを押してください。


LINE@アカウントを作りました!
スタバカスタマイズのコツを直接聞いてみたい方や!
ガジェットのレビューで要望がある方は
是非是非登録してください!
ヽ(=´▽`=)ノ
友だち追加数

jun

著者:jun

Twitterフォロー