綺麗に死ぬITエンジニア

私がWordPressをこれ以上使うのを諦めた理由

2017-01-25

2017年1月、私は当ブログ立ち上げ以来2年間利用し続けてきたWordPressを使うのを辞めました。

現在は、PHPフレームワーク(Laravel)を用いて作成した、独自開発のCMSで運用しています。

私がなぜ、これまで利用してきたWordPressを切り捨てるに至ったか、その理由を書いていきます。

WordPressは「高機能だが完全じゃない」

まず、WordPressはプラグインを導入すれば色々な機能を実現できますが、それぞれのプラグインが往々にして不完全であるということ。

高機能なのはいいことなのですが、もっとも大事なのは、ちゃんと書いた記事が管理・表示できること、正しく長期間保存できること、なのです。

なのに、テーマやプラグインを入れることによって、むしろ高機能すぎて重たくなったり、副作用で他のプラグインと競合を起こしたり、予想外の挙動でデータが破損してしまったり、そしてそういったことから改善・復旧するために時間を取られたりするのが非常に無駄だと感じました。

私は、記事をMarkdown形式で書いており、それをプラグインで管理・変換させていたのですが、特定のタイミングで元のMarkdownが全てHTMLに変換されてしまうバグがあり、元原稿を失った経験があります。

プラグインを使えば、高機能で色々なことが実現できますが、それらの多くは不完全で、なおかつ多くの利用者にとって要らない機能もついてきたりします。

Web開発者の身としては、他者が作った把握できていないプログラムを、むやみにたくさん導入するのもあまり気分がいいものではありません。マルウェア問題などもありますし。

WordPressは「痒いところに手が届かない」

完全じゃないプラグインが多いことから、WordPressではプラグインを自作しないと、本当の意味で自分が実現したいことが実現できないことも多いです。

先ほど挙げたMarkdownひとつ取っても、細かい挙動を見ていけば、完璧なプラグインはなかったです。

また、私はかねてより現在のこのブログのように、ブログをシングルページアプリケーションにしたかったのですが、たかだかWeb APIですらまともに実装するには、プラグインを自作する必要があります。

それに加え、管理画面が重いというのも、私にとっては不便でした。パソコンで記事を書く分には問題ないのですが、レスポンシブデザインを唱っているにも関わらず、スマホでは重すぎて記事を書くどころではないのです。

ちょっとした1字の誤字ですら、外出先では修正できないのです。そして、普段使わないのに、わざわざWordPress編集用のスマホアプリをダウンロードしなければならない羽目になるのです。

痒いところには全然手が届かなくて、実現させるには、私たちが努力する必要があるのです。決して、WordPressは一筋縄ではいかないのです。

WordPressは「難しい」

そして、WordPressを使い続けれらない決め手となったのが、「難しい」というところです。

WordPressは、今現在PHPフレームワークでは主流となっている、MVCモデルを採用していません。つまり、よその人間が見ると、一般的な構造ではないため、長ったらしくて読みにくいソースコードなのです。

1つのバグがあったとき、それが導入しているプラグインの問題なのか、テーマの問題なのか、もしくはコアファイルの問題なのか、特定するのに非常に時間がかかります。慣れればそんなことはないかもしれませんが、WordPressの利用者って、そんなにWordPressのソースコードをいちいち読まなければならないのですか? こんな構成では、いちいち他人のプラグインまで見ていられません。

WordPressの処理フローを解説しているサイトなどありますが、処理フローを把握しないとバグが特定できないって、外部設計的にどうなの?とも思います。

この学習コストの高さに、私はうんざりしました。composerでサクッとライブラリ追加して、チャチャッと機能追加したい…。

また、本格的なフレームワークじゃないので仕方ないですが、ここまで開発じみたことをさせられる割に、開発用にビルトインサーバーが用意できる仕組みもないし、バージョンアップの度にプラグインを対応させなければならない上、対応時にテストできる仕組みがないというのも、今後WordPressを土台にしてブログを続けるモチベーションを下げる要因の一つでした。

WordPressじゃなくていい

ブログを始めるとき、なぜWordPressを選択したかというと、職業がWeb系エンジニアということもあり、シェアNo.1であるWordPressを体験し、学習したかったというのがあります。

実際、プラグインやテーマの自作を経験し、大体の挙動は分かったつもりです。

なので、今現在、「何でWordPress使ってるの?」と問われたら、全く理由がないんですよね。「前から使ってたから」としか言いようがないのです。そこまで便利とも感じていませんし。

なので、私は、自由にチャチャッとやりたいようにできる、独自開発という道を選びました。最近のPHPフレームワークはすごくて、少ないコード量で簡単に色々実現できます。現在のCMSは、暇な空き時間に開発していて、1〜2ヶ月程度で公開まで至りました。エンジニアの方は、そういう道もあるよ!ということで…。

まとめ

WordPressはシェアこそNo.1ですが、不便なことも多いです。万能なCMSとは言えないと思います。

非エンジニアでWordPress使っている人も多く見かけますが、手間を考えると、やはりブログサービスを利用した方がいいですし、エンジニアであっても、必ずしもWordPressがいいとは限りません。

もちろん、WordPressをうまく使えていて、それが最適な選択であるという人もいるとは思います。しかし、私には、わざわざ自分でWebサーバーを借りて運用するだけの苦労に見合う代物か?という疑問がどうしても残ります。

個人ユースでは、本当にWordPressが必要な場面ってそんなにないのでは?というのが私の結論です。

余談

WordPressのコーディング規約(コーディングスタイル)、嫌いです。括弧の直後に半角スペース挟まないといけないとか頭おかしい見にくい。それも、私のWordPress離れを加速させたことを付け加えておきます。

筆者について

フリーランスエンジニアとして活動している、「もりやませーた」です。

筆者のTwitterはこちら。記事に関するご意見等はTwitterの方へお寄せください。

その他業務に関するお問い合わせは、こちらのページをご覧ください。

PHP WordPress