Web制作でWordPressをやめてAstro + microCMSを使うようにしたら幸せになれた

更新

WordPressは代表的なCMSであり、無料で使用できること、活発に開発され続けていること、豊富なプラグインを利用できることから、Webサイト制作において広く採用されています。
実際、私が制作会社でコーダーとして働いていたときは、ほぼすべてのサイトをWordPressで制作していました。

しかしながら、WordPressでのサイト制作はメリットよりも以下のようなデメリットを感じることの方が多かったです。

  • メンテナンスにコストがかかる
  • ユーザーのリテラシーが低すぎるため、思わぬトラブルが起こる
  • 開発者体験が悪い

この記事では、WordPress開発における辛みと、それを解消するAstro + microCMSのメリットを紹介します。

まず結論から

  • Web制作でWordPressを使わなくなった理由
    • メンテナンスにコストがかかる
    • ユーザーのリテラシーが低すぎるため、思わぬトラブルが起こる
    • 開発者体験が悪い
  • WordPressをやめて、Astro + microCMSを使うようにしたら幸せになれた
    • 保守管理のコストが小さい
    • 静的サイトなのでセキュリティリスクが低い
    • モダンフロントエンド同様の抜群の開発者体験

WordPressが辛い

辛み1: メンテナンスにコストがかかる

WordPressサイトのメンテナンスは結構面倒&大変です。WordPressサイトを保守したことのあるならば誰しも思ったことがあると思います。

WordPressサイトではWordPress本体のアップデートに加え、使用しているプラグインのアップデートにも対応する必要があります。
また、サーバーのPHPのバージョンにも気を配る必要があり、必要に応じて変更しなければなりません。

たまにプラグインに脆弱性が見つかり、緊急のアップデートがアナウンスされることもあります。
もちろん、これにもすぐ対応する必要があります。

場合によっては、WordPress本体の仕様変更に応じてソースコードを変更する必要もあります。

これをサボるとソースコードやプラグインがあっという間に負債化してしまい、触らなければいけないが触りたくない地獄のWordPressサイトになってしまいます。

辛み2: ユーザーのリテラシーが低すぎるため、思わぬトラブルが起こる

WordPressはエンジニアでなくても触れます。
しかし、運用するに当たってある程度のリテラシーや操作方法を学ぶ必要があります。

前職では顧客や運用担当者にその意識がなく、(当たり前過ぎて)WordPressエンジニアが想定していなかったようなトラブルが度々発生していました。

以下はすべて私が前職で体験したトラブルです。

  • お客さん側で管理するということで任せていたものの、WordPress本体・プラグインともに全く更新されている気配がない
  • 「サイトが急に表示されなくなった」と連絡があり調べてみたら、自動更新されたプラグインが必要とするPHPのバージョンに対してサーバーのPHPが古すぎたため、エラーになっていた
  • アカウントのIDとパスワードに同じ文字列を使用してサイトを乗っ取られる
  • スパム対策をしていないフォームを攻撃の踏み台に利用される

あまりにひどい…(ちなみに最後の2つは社内メンバーのやらかしです…)

WordPressに限った話ではないですが、扱いが簡単と言えどもある程度の学習は必要です。
WordPressは世界中のWebサイトで使われているが故に頻繁に攻撃の対象になっており、無知や怠惰は重大な事故に直結します。
それすらできない・するつもりがないなら、WordPressを使うべきではありません。

辛み3: 開発者体験が悪い

WordPressサイトの開発者体験は良好とは言えないです。

  • Prettier等のフォーマッターが効かない
    • VSCodeプラグインにあるといえばあるが、正直性能は微妙
  • リンターも一応あるが、準備が面倒
  • ホットリロードやSCSSやJSのコンパイル・トランスパイル環境を自前で用意する必要がある
  • WordPress以前にPHPが辛い
  • WordPress独自の仕様も辛い

と、WordPressの開発者体験はかなりマイナスのイメージです。

Twitterなんかを見ていると「Web制作イコールWordPress」みたいに語られていますが、WordPressエンジニアの方は開発者体験についてどう思っているのでしょうか?
私はかなり辛いので、正直もうWordPressは使いたくないレベルなのですが…。

Next.jsとかAstroみたいにセットアップ時点である程度の環境が用意されていてほしいです。

WordPressをやめてAstro + microCMSにしたら幸せになれた

以上の通り、WordPress開発は辛いです。

なので、私はWordPressをやめました。

WordPressに代わって、Astro + microCMSでサイトを構築するようにしています。

Astroには以下の利点があり、WordPressの辛みを解消できます。

  • 保守管理はnpmパッケージのアップデート程度でOK
  • ホスティングにCloudflare Pages等を使用すれば、サーバーの保守管理もほぼ不要
  • 静的サイトなのでセキュリティリスクが低い
  • モダンフロントエンド同様の抜群の開発者体験

AstroにCMS機能はありませんが、microCMS等と組み合わせることでCMS機能を実装できます。

もちろんAstroにも懸念事項はあります。

  • WordPressエンジニアほどモダンフロントエンドに詳しいエンジニアは多くないため、エンジニアのアサインに苦労するかもしれない
  • フロントエンドは変化が早いので、競合の台頭であっという間に廃れることもありうる
  • 仕様や条件によってはWordPressの方が適している場合もある

とは言え、脳死でWordPressを選択するよりも、Astro + microCMSを選択した方が幸せになれる場合が多いと思います。

まとめ

この記事ではWordPressをやめた原因であるWordPress開発における辛みと、それを解消するAstro + microCMSのメリットを紹介しました。

以下をこの記事のまとめとしておきます。

  • Web制作でWordPressを使わなくなった理由
    • メンテナンスにコストがかかる
    • ユーザーのリテラシーが低すぎるため、思わぬトラブルが起こる
    • 開発者体験が悪い
  • WordPressをやめて、Astro + microCMSを使うようにしたら幸せになれた
    • 保守管理のコストが小さい
    • 静的サイトなので爆速&セキュリティリスクが低い
    • モダンフロントエンド同様の抜群の開発者体験