高速化WordPressが重い、遅い!?WordPressのサイトが重い、読み込みが遅いので高速化したい、という相談をよく受けます。本シリーズでは、実際の高速化の実例を元に、事前調査から対応までの手順をご紹介します。経験上、WordPressが遅い原因の80%以上はプラグインの過剰使用です。プラグインの多くはページにアクセスする度に何らかの初期処理を行っており、そのほとんどはその度にデータベースにアクセスします。有効なプラグインの数が多すぎるのももちろんですが、単一のプラグインでも速度に大きく影響するものもあります。私はまず、「プラグインを減らして本質的にスリム化する」というアプローチを推奨しています。いえ、長く運用しているサイトであれば、どれが使っているプラグインなのか、止めた時にどんな影響があるのかわからない、というケースも多いでしょう。それを、ひとつひとつ調査・検証しながら停止していくのは、非常に労力がかかります。WordPressが遅い原因・重いプラグインの調査1そこで、初めに、プラグインを停止することによってどれくらい速度改善が期待できるのか、検証することを考えましょう。いうプラグインを使用することです。実際に検証に使用したキャプチャをご覧ください。プラグインがどれくらい読み込み速度に影響しているのか、特にどのプラグインが重いのかが、表示されます。何と、プラグインの影響が80%以上、という結果が表示されました。いうことは、プラグインを全て停止すれば、表示速度が5分の1になる・・・?この数字を、このまま真に受けるのは少し怖いですね。いえ、ページにアクセスする度に、プラグインが100回近くもデータベースにアクセスしているというのは、衝撃です。WordPressが遅い原因・重いプラグインの調査2そこで、一時的にプラグインを全て停止して、速度を比較してみることにしました。トップページ、固定ページ、個別投稿ページ(と管理画面)に、5回ずつアクセスして中央値を取りました。毎回キャッシュはクリアします。Download)の時間を見ています。停止前と再開後の両方を計測したのは、時間帯によるサーバ負荷の変化に、調査結果が影響されないようにするためです。時間が半分以下になりました。これは、プラグインの過剰使用によって、WordPressが重く、遅くなっていると言って良さそうです。※プラグインを全停止する前には、データベースのフルバックアップを取っておくことをおすすめします。言うまでもなく、使ってないプラグインは停止しましょう。判断が難しい場合も多いと思いますが、こちらの記事を参考に、地道に取り組んでみてください。問題は、使用しているプラグインです。プラグインはできるだけ汎用的に使えるように作られているため、実現したいことに対して、機能や実装が冗長であることが多いです。本当に必要な機能だけを、適切なテーマのカスタマイズで実装したほうが、当然高速になります。次の記事以降で、よく使われるいくつかのプラグインを、テーマのカスタマイズに置き換えていく方法を解説していきます。※「このプラグインの対応方法も知りたい」というご要望があれば、ぜひお寄せください。このような記事風の外部リンクを簡単に投稿できるプラグインです。WordPressのサイトが重い、読み込みが遅いので高速化したい、という相談をよく受けます。本シリーズでは、実際の高速化の実例を元に、事前調査から対応までの手順をご紹介します。経験上、WordPressが遅い原因の80%以上はプラグインの過剰使用です。プラグイン詳細を見るColumnWordPressにXMLサイトマップを独自実装するカスタマイズWordPressに限らず、SEO対策に不可欠なXMLサイトマップ。当サイトで使用しているプラグインです。WordPressのサイトを簡単に会員制サイトにすることができます。ショートコードで簡単に会員登録フォーム、ログインフォームが設置可能で、全ての投稿に対して、会員用コンテンツと非会員用コンテンツを設定することができます。ショートコートで簡単に会員登録フォーム詳細を見るColumnWordPressテーマ・プラグイン開発時のセキュリティ対策WordPressのテーマやプラグインを開発、カスタマイズする際には、脆弱性を生まないよう、セキュリティ対策を十分に考慮する必要があります。管理画面内外を問わず、WordPressにリクエストを送信するフォームや、データを更新するAJAXを実装する場合には、CSRF対策を施しましょう。Footerは、スマートフォンサイトに簡単に固定フッターを設置できるWordPressプラグインです。複数ボタンタイプは2ボタンから5ボタンまで設定可能。お問合せフォームやSNSへのリンクのほか、電話ボタンの設置も可能です。当サイトで使用しているプラグインです。LOYATYのアドオンとして、決済機能を提供します。決済サービスとして、カード決済手数料が3.0%〜と安く、個人事業主でも利用可能なPAY.JPと連携できます。(別途PAY.JPのアカウントが必要です。)詳細を見るColumnWordPressのテーマファイル構成を本気出して考えてみたエンジニアの端くれとして、たかがWordPressテーマであっても、綺麗なモジュール設計がしたいわけです。そこで、以前作ったサイトのテーマをモチーフに、テーマファイルを再設計してみました。WordPressでガチで実装すると意外と面倒ですよね。