WordPress(ワードプレス)サイトが重い理由【2023年度版】

皆さんこんにちは、taneCREATIVEの「ちほうタイガー」です。
2023年7月下旬に本記事を書いています。

元々は、2020年8月末に公開していましたコラム「WordPress(ワードプレス)サイトの保守が必要な理由と注意点 ~WordPressのメリットとデメリットへの対策~」ですが、2023年7月中旬に「WordPress(ワードプレス)サイトの保守管理とは?【2023年度版】」として改訂致しました。
それに伴い、WordPressサイトの速度が重い(遅い)理由と対策については、2023年度版としてこちらのコラムにてまとめ直させていただくことになりました。

少しでも皆様のお役に立てる記事に改善していければと思います。長文になるかと思いますが、どうぞよろしくお願い致します。

WordPress(ワードプレス)特有の重い(遅い)理由

WordPress(ワードプレス)は2023年7月現在、世界で圧倒的な支持を得ているオープンソースのブログソフトウエアであり、CMS(コンテンツ管理システム)です。
本記事を改訂している2023年7月19日時点で、世界中のWebサイトの約43.1%がWordPressで構築されているとのことです(W3Techs)。
なお、CMSというマーケットにおいて、WordPressは63.1%のシェアを有しているとのことですので、ShopifyやWixの追い上げも目立ちますが、いまだ世界で最も使用されているCMSであると言ってよいでしょう。

このWordPressが圧倒的なシェアを有するようになった主な原因としては、WordPressは、オープンソースのCMSであり無料であるというだけでなく、動的なCMSとして様々な機能を実装しやすく、しかも様々なテーマ(Webサイトのデザイン・機能がセットになったパッケージ)プラグイン(WordPressに機能を追加・カスタマイズするための拡張ツール)などが豊富に開発されており、その結果、初期費用を抑えながら、一定レベル以上の高品質なWebサイトの制作、管理システムの開発、運用を実現できるということになるかと思います。

一方で、動的なCMSであること、テーマやプラグインを用い易いことから、設計・実装の方法次第では表示速度や反応速度が重い(遅い)Webサイトになりやすい傾向にあります。

動的なCMSであることから構造上重く(遅く)なり易い

まず、WordPressは動的なCMSであることから、Webサイトの表示速度が遅くなり易いという構造上の特徴があります。

ここでいう「動的なCMS」とは、ユーザーがアクセスをした時の情報に基づいて、リアルタイムでWebページを生成するCMSのことを指します。

具体的には、動的なCMSのケースでは、Webサーバー内に最初から完全なHTMLファイルが存在するわけではなく、①ユーザーがWebサーバーにアクセス(リクエスト)をすると、②CMSの方でDBサーバーにコンテンツデータを渡すよう指示を出し(クエリ送信)、③DBサーバーからコンテンツデータを送ってもらった上で、④ユーザーがブラウザで入力したデータや、Webサーバー内に元からある更新頻度の低いファイルと組み合わせて、⑤HTMLファイルを作成して、ブラウザへ送信するという手順を踏みます。

これに対し「静的なCMS」とは、Webサーバー内に最初から完全なHTMLファイルが存在させる手法でですので、①ユーザーがWebサーバーにアクセス(リクエスト)をすると、②Webサーバーが要求されたデータをそのままブラウザに送信し、表示します。
※この静的なCMSと静的サイトジェネレーター(SSG)の違いもあるため、それぞれの流れを(かなり)単純化してまとめた図を作成してみました。

動的なCMSでのWebサイト表示フロー

データベース(MySQL)がメンテナンスされていないと重く(遅く)なることがある

次に、WordPressは動的なCMSであり、一般的にはMySQLというデータベース内にコンテンツデータが保管されていますが、運用をするに伴い、コンテンツ以外にも色々なデータが保管されていきます。
このデータの増加に合わせてデータベースのメンテナンスが必要となる場合がありますが、このメンテナンスをしていない為に、最初は早かったWordPressサイトがどんどん重くなるケースがあります。

サードパーティ製のテーマには重い(遅い)ものがある

また、WordPressでは、テーマと呼ばれるWebサイトのデザイン・機能がセットになったパッケージを利用することで、デザイン・コーディングの工数を削減することができます。
このテーマも公式のものを利用・カスタマイズされている分には、表示速度面で問題が生じることはあまりないのですが、いわゆるサードパーティ製の有料テーマを利用されている場合、表示速度が重くなるケースがあります。

サードパーティ製の有料テーマは機能が豊富ですし、高度にパッケージ化されていることから、有料テーマで想定されている挙動・機能を実装するには非常に適していると言えますが、使用しない機能などもまとめてパッケージ化されていることや、ネットワークやレンダリング面で表示速度の高速化に配慮されていないテーマがあることで、表示速度が重くなるケースがあります。

プラグインには重い(遅い)ものがある

さらに、WordPressでは、プラグインと呼ばれるWordPressに機能を追加・カスタマイズするための拡張ツールを利用することで、機能の開発工数を削減することができます。
このプラグインについても、非効率的なコーディングをしている等で、実現する機能の割に重いプラグインが存在します。
また、サーバーサイド並びにネットワーク、レンダリング面での高速化に配慮されていないプラグインを使用することで、表示速度が重くなるケースもあります。
プラグインを利用することで、しかしながら、使用しない機能などもパッケージ化されていることから、表示速度面では重く(遅く)なるケースがあります。

WordPressかどうか関係なく重い(遅い)理由

上記のように、WordPressは、動的なCMSであること、テーマやプラグインを用い易いことから、設計・実装の方法次第では表示速度や反応速度が重い(遅い)Webサイトになりやすい傾向にありますが、本質的には、WordPressだから重い(遅い)というよりは、サーバーサイド、ネットワーク、レンダリングの高速化を意識せずにWebサイトが制作・開発されていることで重い(遅い)ケースが多いと感じます。

実際に、当社のオフィシャルサイトはWordPressで制作されていますが、PageSpeed Insightsにてモバイルで100点のパフォーマンスを出すことができています。
そして、その表示速度の高速化により、小さな制作会社のオフィシャルサイトの得体不明のキャラが記載した本記事が、テクニカルSEO上の評価を受け、検索エンジン経由で皆さんに読んでいただくことができているのです。

毎度恒例の…既存のWeb制作会社さんに優しい対応をお願い致します

以上のように、WordPressは非常に優れたCMSであって、WordPressサイトであってもある程度表示速度を高速にすることは可能ですが、その為にはWordPressやテーマ、プラグインに対する深い理解と、サーバーサイド、ネットワーク、レンダリングの高速化に対する深い知見が必要となります。

しかしながら、単価が安く、お仕事に追われまくっている当社のようなWeb制作会社において、CMSからバックエンド、サーバーサイドまで理解し、深い知見を有することができるようになるように勉強できる時間と意欲を、簡単に捻出できるわけないのです(心の叫び!)。

皆さんの利用されているWeb制作会社さんも、日々時間に追われている中で可能な範囲で努力されておられると思いますので、やさしい目をもってWeb制作会社さんに接して頂けますと幸いです。

この記事を書いた存在
ちほうタイガー

taneCREATIVEに所属する謎のトラ。