wordpressってエンジニアな人たちからすると、
- MVCじゃないし、、、、
- phpとしてもモダンな書き方じゃない、、、、
- アップデートで壊れるし、、、、
- URLを設定値で持ちつつもそこから生成されたURLをさらに、データベースに保存してしまったり、、、
- プラグイン書こうと思ったら、global関数ばかりでAPIリファレンスを見るのも萎えたり、、、
みたいなイメージの方が多いかと思います。(少しネガティブな点を書きすぎましたww)
僕もそうでした(いや今もそうか)
最近はその辺の違いを克服するためのノウハウがかなり出てきているようですね。
残念なのはやはり日本語での情報が少ないことでしょうか。
海外のプラグインは使えるものがかなりの数でてきています。
wp-cliが便利
今日はそのうちの1つwp-cliを紹介したいと思います。
http://wp-cli.org
便利と思えるのはエンジニアな人
cygwinやOSXなど*nix的なコマンドが使える環境が必要ですので、対象者としてはエンジニア的スキルが少なからず必要です。
少なくともコマンドを叩ける人が対象となっています。
ちょっとロリポでwordpressのブログ書いてみたくらいの人にはtoo muchなプラグインかもしれません。
wp-cliでできること
wp-cliでできることを少し紹介したいと思います。
ドメイン移管時にデータベースの中にあるURLを変更できる
私も何度か経験がありますが、wordpressのドメイン移管はこれまで何かと面倒です。
ドメイン移管ってそれほど発生するものじゃないように思えますが、ビジネスでwordpressをやっていると、
CMSでガンガンコンテンツを作るのは自分ではなく、プロデューサやアルバイトのかわいい女の子だったりします。
ステージングができた時点で、デザイナさんはテーマファイルを載せてくれるので、
ステージング環境でガンガンコンテンツを作ってしまうことがありますよね。
結構作りこんでしまうと、本番でやり直してくれとも言えず、
いいよデータベース移行するからみたいなことってありそうじゃないですかね?あります。
で、いよいよ移管するってなったら、せっかく作ってもらったコンテンツが反映されてなくて、
アルバイトの女の子に「あのエンジニア、まじいけてない」って思われてしまいます。
そんな時に使えるのがwp-cliのsearch-replaceコマンドです。
- ステージングデータをdumpして、本番に投入します。
- 下記コマンドを叩きます
wp search-replace stg.com real.com
これで、「今後はコンテンツの編集は本番でやってよね。本番だから一回ステージングでテストしてからやるといいよ」
なんてアルバイトの女の子に言ってあげると、「あのエンジニアの人クールだわ」と思われます(思われません
その他にも、phpunitが使えたり、pluginのインストールできたりと、
なかなか色々と便利なので、自分はこれからも使ってみたいと思います。
ちなみにpluginをどういう風に開発するかを考えるのに、下記の本は非常に参考にさせていただきました。