タグ: AMP

  • [WordPress] 「AMP」プラグイン と広告プラグイン: 「Advance Ads Pro」- 高速化と広告表示の両立を図る [2020/09/11]

    [WordPress] 「AMP」プラグイン と広告プラグイン: 「Advance Ads Pro」- 高速化と広告表示の両立を図る [2020/09/11]

    はじめに

    当サイトのblogは、自宅のNASにWordPressを導入してblogを発信してしています。レンタルサーバーと比較して、サイトのレスポンスでは劣っていると思います。因みに、ネット環境は、1ギガです。これも大きな要因になっていると思われますが、WordPressのプラグインを適用して、最大限、サイトのレスポンス改善を検討しました。以下、レスポンスを改善し、それを維持したまま、Google AdSenseとAmazon Affiliateの広告を表示するための設定について解説します。

    必要なプラグイン

    • AMP
      • AMP対応ページにする
    • Advance Ads Pro
      • AMPページにGoogle AdSense広告を表示する
      • アップデートによって、以下のプラグイン「Head, Footer and Post Injection」は、Advance Adsが実行する広告表示には、必要としなくなっています
    • Head, Footer and Post Injection
      • AMPから提供させる専用のJavaScriptを使用できるように、Header部にその宣言をするコードを挿入する
      • Amazon Affiliate の広告コードに「iframe」が使われている場合に、amp-iframe使えるようになる

    AMPとは

    AMPは、Accelerated Mobile Pagesの略号で、携帯電話などのモバイルによるWebの閲覧を高速度化するGoogleが提唱する技術やルールです。

    AMP プラグイン

    これまで、Autoptimizeなどの速度アッププラグインやcache、画像の圧縮など多数のプラグインにより、PageSpeed Insights (PSI)のスコアは改善できましたが、そのスコアは、Mobileで40代に留まり(PCでは~80程度)、それ以上の改善は、同種のプラグインを変更しても達成できませんでした。しかし、以下の調整作業の結果、Mobileスコアは、~70に、PCスコアは、~98にそれぞれ改善されました。

    今回、サイトのレスポンスの根本的な解決として、、AMPプラグインを導入し、サイト全体をAMP化する事で、解決を試みました。

    その結果、超えられなかったスコアの壁を超える事ができました(Mobile: 40→70、PC: 80→>95)。しかし、AMPの制約(ルール)があため、標準意外のプラグンで提供されているJava Scriptが、100%互換では動かない場合が多くあります。

    現在、シンプルなプラグンに集約を進めています。具体的には、これまで導入していたプラグインである(1)目次プラグイン「Content of Post Plus」は、表示が少しおかしかったり、目次をたたむことが出来なくなったりします。(2)吹き出しプラグイン「Encyclopedia」は、PCでは正常に機能しますが、Mobile(iOS)では、吹き出し機能とリンク・ジャンプ機能の区別ができなくなりました。これらのブラングインは、これまでに削除を完了させました。当サイトは、シンプルな表示に舵(かじ)を切りました。

    AMPの開発オフィシャルサイト

    https://amp-wp.org

    広告コード導入

    Advanced Ads Pro

    AMP対応の広告を自由な位置に挿入することができます。

    当サイトでは、投稿ページのAMP化と広告プラグイン(Advanced Ads)の組み合わせで、素行錯誤を繰り返してサイト構築をしてきました。現在は、固定ページはAMPから外しています。最近のAMPプラグインのバージョンアップ(Ver.2)により、AMPのページを指定できるようになりましたのが理由です。

    • Google AsSenseの表示
      • AMPページには、Advanced Adsプラグインで表示させる
    • Amazon Affiliateの表示
      • Head, Footer and Post InjectionsでAMP対応のためのコードを埋め込む

    Head, Footer and Post Injections

    Amazon Affilicate用

    このプラグインの「Head and footer」タグに、以下のコードを入力しています。

    <script async custom-element="amp-iframe" src="https://cdn.ampproject.org/v0/amp-iframe-0.1.js"></script>
    <script async custom-element="amp-script" src="https://cdn.ampproject.org/v0/amp-script-0.1.js"></script>
    <script data-ad-client="ca-pub-1277399675163968" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>

    AMP用

    このプラグインの「AMP」タグに、以下のコードを入力しています。もしかすると、Advanced Adsプラグインで、同様のコード挿入はされているかも知れませんが、この状況で安定しているので、今回は追求はしません。

    <script data-ad-client="ca-pub-1277399675163968" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>

    Advanced Adsプラグインは、AMPにも対応する広告プラグインです。設定による自動広告、コード挿入による手動広告を、ページの色なん指定した箇所に挿入できます。両プラグインのアップデートも進み、最近、特に動作が安定してきました(2020/09/09)。

    AMP バージョンの WordPress サイトに広告コードを挿入する – Advanced Ads プラグイン –

    https://support.google.com/adsense/answer/9579782?hl=ja

    AMPの恩恵をうけるには、以下のプラグインをインストールして、各ページをAMPに対応させる確認作業が必要です。

    設定

    図1を見てください。最初の設定をします。以下に示したように、「Standard」、「Transitional」及び「Reader」の内、1つを選びます。これらの設定を、適宜、付けたり外したりするのは、その下の「Supported Templates」の☑︎で行えます。いちいちAMP Pluginの無効化をせずに、AMP設定を外すことが可能なようです(十分な検証はできていません)。

    AMP → Generalの設定

    • Standard
      • サイトについて AMP 対応バージョンのみで構築される
      • AMPにもノーマルにも完全に対応したサイトになるため、サイト内のリンク先もAMPに対応したページ/投稿である
    • Transitional (過渡期)
      • サイトの AMP バージョンと非 AMP バージョンの両方で構築される
      • モバイル専用ページにリダイレクトされないが、Googleなどの検索からリンクしてもらえ
      • ページ、投稿の単位でしか機能しないので、ページにありサイト内リンクは、AMPページではなく標準ページとなる
    • Reader
      • サイトの AMP バージョンと非 AMP バージョンの両方で構築される
      • モバイル専用ページにリダイレクトされないが、Googleなどの検索からリンクしてもらえる
      • ページ/投稿の単位でしか機能しないので、ページにありサイト内リンクは、AMPページではなく標準ページとなる
    • Supported Templates
      • AMP Pluginを有効化のまま、AMPを付けたい外したりできます
    図1. 設定 (標準; Standard)

    図2. 設定 (トランジショナル)

    AMP → Invalited URLs

    AMPをインストールした後は、全てのページの確認が行われて、AMP → Invalited URLsにAMP文法に合っていないリストが保存されます。

    これらのリストの文書について、AMP非対応文書とするかAMP対応文書にするかを設定をしなければなりません。

    赤のラインやアイコンが出ている文書(アラート)は、そのままでは、AMP対応ではないことを意味しています。

    アラートがでている文書をクリックして、個別に設定します。

    インストール後の運用

    AMPプラグインのインストール後は、新しい投稿やページがAMPに対応しているか、編集を「更新」する都度行われ、プペファイルが作られる/更新されるようです。そのため、マシンパワーを結構使いますし、待ち時間が、これまで以上にかかります(20~30秒)。

    • レンタルサーバーでは、気にならないかもと思いますが、自宅のSynology NASのWordPressを構築している場合、非力を露呈しているのかもしれません
    • 当サイトでは、当初、PHPのバージョンを5にしていました。これでは、AMP関連でタイムエラーが続出しました。PHPのバージョンは最新版を使うべきです
    • PHPのバージョンを7.2に変更したところ、AMP関連のタイムエラーは出なくなると共に、投稿の更新時の待ち時間も短縮されました(2020/07/05 Mr.はりきり)

    Adminメニューを表示にしているなら、ページを表示してみると、トップメニューに以下のように表示されます

    • 🟢: AMPに対応している
    • : 一部対応していないコードが存在するが、構造を壊すほどではない場合
    • ❌: AMPに対応できないコードが存在するため、AMPによるコード変換が行われない。すなわち、高速化の恩恵を受けられない

    統合の更新を実行した時、画面のトップにフロート・メッセージがでなければ、AMPに対応した投稿/ページということになります。高速化の恩恵をうけることができます。

    もし、フロート・メッセージとして、以下のメッセージが出るかもしれません。

    “There is 3 issue from AMP validation which needs review. 1 issue is directly due to content here. Nevertheless, the invalid markup has been automatically removed.“Review issues

    もし出ても、以下の図のように、右の文書ブロックにある「Enable AMP」が「ON」になっていれば、大きな問題ではないため、AMPの恩恵が受けられることを意味しています。

    もしも、このメッセージが出たときは、”Review issues”リンクをクリックして確認することができます。

    左メニューのAMP -> Validated URLsでの個別の文書に飛びます。

    処理方法

    AMPにとって高速化コードに書き換えることが難しいJS, CSS及びHTMLのコードを「Removed」(削除してしまう)か「Kept」(そのままにしておく)か、どちらかの処理を示されます。

    • Removed (削除)
    • Kept (保存)

    AMPを有効にしたければ、3つの方法があります。

    • 提案を受け入れる(Removed提案、Kept提案をそのまま受け入れて、AMP画面を更新する)
    • プラグインを削除する (前述したように、Content of Post PlusプラグインとEncyclopediaは削除しました/機能を放棄しました)
    • AMPにコンパチブルなプラグインに置換する(AMPにコンパチブルなプラグインは、そうそう見つけられません、ある程度の機能の劣化を許容して、その他のプラグインに置換)

    詳細

    提案を受け入れる

    • 提案を受け入れて、すべての「Kept」項目を「Removed」にする。この場合、AMPルールに引っかかっているプラグインの作用は、そのままにしておけます。
    • 表示を確認する
    • 表示結果が壊れている場合や気に入らない場合は、提案の受け入れは失敗になります。
    • 1つでも「Kept」があると、AMPは非対応になり、サイトの速度は上がりません。

    プラグインを削除する

    • AMPの提案を受け入れられない場合は、不要であればプラグインの無効化または削除を行います。
    • 削除しなくてもいいかもしれません。当サイトの環境では、キャッシュが有効なので、削除する必要があったのかもしれませれん。
    • 問題が解消されない場合は、無効化だけではなく削除も検討してください。

    AMPにコンパチブルな別のプラグインに置き換える。

    当サイトでは、写真やイメージ(メディア)を表示するプラグインを新しいプラグインに置き換えたのですが、以下の工夫で乗り切りました。

    • メディアのキャプションを設定している方は少ないと思いますが、キャプションを指定しておくと検索が可能です。
    • 古いプラグインから、貼り付けた写真のキャプションに、検索のための単語や文章を設定します。
    • 新しいプラグインから写真のキャプションを検索で探して、貼り直します。

    invalidのRemoved(除去)を選択して、Updateし、全てのシグナルをグリーンできれば、AMPが可能な状態になリマス。

    運用 (ルーチン)

    • プラグインを変更したり、プラグインの設定を変更した場合、AMPに対応しなくなる場合があります。
    • 理由は、AMPプラグインが、ページをコンパイル(AMPページに変更)しているため、コンパイル時点の環境を前提にしているためです
    • 対策は、プラグインの変更は、極力避ける
    • 新たにプラグインの削除/導入があった場合でも、レスキューは可能です。AMP「検証済みURL」から、文書ごとに設定、一括操作できます

    1. 文書ごとに設定

    以下では、AMP disabledになっている。そこで、Removedにする

    Status -> AMP enagedがブルーとなりAMPが有効となると共に、「Update」ボタンが押せるようになる。

    「Update」ボタンを押すと、その設定が反映され、「Update」ボタンが押せなくなる。

    ページを表示させて表示具合、動作を確認する。

    2. 一括操作

    プラグインを新規導入したり、既存のプラグインの設定を変更したりすると、基本的に全てのページに影響が及びます。

    影響が多数のページに及んだ場合は、一括操作をします。

    • 左メニューからAMPを選択
    • 検証済みURLを選択
    • 以下の2つの一括操作が可能
      1. 忘れる
        • AMP Pluginから設定ができなくなりますが、そのページ設定されていた「AMP}の有効/無効は、その時のままページは存在します
        • そのページを、再度AMP Pluginの管理下に置くには、投稿画面から更新すれば管理が可能になります
      2. 再検証 : 以下に解説

    AMP 検証済みURL

    再検証
    • 左上の設定を「再検証」を選択、「⬜︎URL」にチェックをいれて、「適用」を実行します。
    • マシンパワー : Synology DS920+でfull powerになるほどパワーを使います
    • 途中でタイムエラーが出る場合がありますが、PHPが原因になっている可能性があります。古いバージョンを使用している場合は、新しいバージョンに変更しましょう。少なくともバージョン5は使用しないで、7以上を使います。
      • Synology NASのDSMにログインして、Web Station起動
      • PHP関連の設定で、バージョンを7以上に設定
      • もしも、該当するPHPバージョンが無い場合は、パッケージセンターからインストールする
      • バージョン5と7とでは、相当なパフォーマンスの違いがあります。是非、新しいバージョンに置き換えましょう

    エラーのインデックス

    個別のエラーが1つずつ表示されています。同様にして処理します。左上の設定を「削除」、「⬜︎エラー」にチェックを入れて、「適用」を実行します。

    当サイトの改善程度

    AMP導入前

    AMPを導入するまでは、速度アッププラグインやcache、画像の圧縮など多数のプラグインにより、PageSpeed Insights (PSI)のスコアは改善できたものの、40代に留まり、それ以上の改善は、同種のプラグインを変更しても達成できませんでした。

    AMPの威力

    そこで、今回、AMPを導入することで、根本的な解決を試みました。

    基本条件は、Autoptimizeプラグインを併用です。

    その結果、PSIモバイル・スコアは、50から80, 90にも届くようになりました。広告を表示させたり、本文の量が多くなったりすると、実用的には、~70くらいです。

    劇的です。

    バカチョンのプラグインと比べると少しハードルが高いことは確かですが、スピードにお困りの場合は、ご検討の余地はあると思います。

    追記(2020/05/29) : AMPとAutoptimizeとの併用効果については確認してみました。

    • Autoptimizeプラグインを1ヶ月程度、無効にしてAMPプラグインとWP-Optimizeプラグインでの運用をしていましが、PSIモバイル・スコアが45程度と不良であったページがあったため、以下のように確認してみました
    • Autoptimizeプラグイン(無効) – あるページについて
      • PSI-モバイル・スコア : 45程度
      • PSI-PC・スコア : 85程度
    • Autoptimizeプラグイン(有効) – 同じページについて
      • PSI-モバイル・スコア : 55程度に改善
      • PSI-PC・スコア : 95以上に改善
    • 結論、AMPプラグインは、モバイル専用であり、PCについては、その恩恵を与えない可能性がある。よって、Autoptimizeプラグインは、併用すべきと言論した。

    広告挿入プラグイン

    広告コードの挿入方法ネイティブペアクラシック
    Advanced Ads プラグイン(自動広告と広告ユニットの両方に対応)☑️☑️☑️
    Ad Inserter プラグイン(自動広告と広告ユニットの両方に対応)☑️☑️☑️
    Insert Headers and Footers プラグイン(自動広告のみ)☑️☑️☑️
    Genesis テーマ(自動広告のみ)☑️☑️

    安定運用

    高速化とAdsense表示の両立

    AMPもAdvanced Adsもバージョンアップが進み安定してきました。

    ここで、方針を明確にすることにしました。以下の通りです。

    • AMPページに対応させる/させないページを明確にする
      • 投稿ページ : AMP対応とする
      • 固定ページ : 通常ページとする
    • メンバーシップ・ページに対応
      • 当サイトでは、今後のことにも備えて、Ultimate Mebers (UM)プラグインをインストールしています
      • AMPに対応していないので、AMP(Ver.2)プラグインの設定から、「抑制」設定にしてプラグインのコードが挿入されないようにします

    以上の設定で、AMP対応の投稿ページは、UMプラグインによるメンバーシップによる隠れプロックの指定はできません。固定ページでは、逆にUMプラグインの恩恵を受けることができます。

    AMPページで広告が表示されない場合

    AMPページでAdvanced Adsプラグインによる広告が表示されない場合があります。具体的には、Amazonの広告は表示されますが、Googleの自動設定の広告では、表示されないことがあります。すごくシビアに反応して広告の非表示となります。

    対応策をいかに示しました。AMPプラグインの機能と、その運用に関連して、Googleの広告の非表示が起こるため、投稿ページのAMPプラグインによる処理が対策の中心になります。

    • プラグインを更新した場合、AMPプラグインは、それを察知し、以下の図のように「最新でない結果」と表示されます。この場合、Google AdSenseの広告が表示されなくなっています。
    • 対策は、「再検証」の処理をする事です。それにより、問題がなければ、この「最新でない結果」は、消えます。そして、Google AdSenseは表示されるようになります。
    • もしも、その処理で、「最新でない結果」が消えなければ、投稿内容について更新する必要がありということになります。具体的には、当該、投稿ページの編集画面に行き、何もせずに、「更新」をしてください。これで、「最新でない結果」は消えます。
    • もしからすると、「最新でない結果」が表示されている投稿は、既にページとして削除したかで無くなっている場合があります。その場合、この表示は、実質的に問題にならないので、放置しても良いですが、AMPプラグインから、「忘れる」をクリックして消すことも可能です。

    問題点

    AMPのバージョン 2.0.2で問題が残っています。再検証を一括でやるのですが、ある確率で「忘れる」が起こります。AMPにしない設定として、「忘れる」という操作があります。その操作をしていないのに、検証されたURLから消えてしまいます。すなわち、「忘れる」を実行したような現象になるのです。その忘れたベージを探すのは、投稿数が多いほど至難の技になります。AMPのページ対応になっていないことで、広告が表示されなくなります。このことで「忘れる」が起こっていることがわかりますが、確認するのには相当の退屈な時間が必要です。この「忘れる」になってしまったページを再度、AMPに登録する方法は、投稿の編集画面から、更新ボタンを押せず可能です。しかし、そのページを探すのが大変なのです。何か、良い方法がないのでしょうか。地道に退屈な時間を使いましょうか(2020/09/21)

    編集履歴
    編集履歴
    2020/02/27 はりきり(Mr)
    2020/05/29 追記(AMPとAutoptimizeの併用効果はある)
    2020/07/05 update
    2020/07/20 追記
    2020/08/21 追記(はじめに)、修正(”AMP for WP”に関する記載を削除)
    2020/09/09 追記( AMPのバージョンアップ(2.0)となったので、その改善された機能)
    2020/09/11 追記(必要なプラグインリスト、Head, Footer and Post Injectionプラグインとその追加したコード)
    2020/09/21 追記(「忘れる」になったページは、一括で再検証した時に、ある程度の確率で起こる)
  • [WordPress] Autoptimize プラグインの威力 – ブログ・サイトのスピード改善対策プラグイン – 更にAMP対応まで進めた結果 [2020/05/15]

    [WordPress] Autoptimize プラグインの威力 – ブログ・サイトのスピード改善対策プラグイン – 更にAMP対応まで進めた結果 [2020/05/15]

    概要

    当サイトのGoogleSpeed Insightsで、サイトのスピードを測定(2020/02)したところ、モバイルでのスピードは、4~5%でした。そこで、サイトスピードを改善するプラグインを検討したところ、「Autoptimize」を基本に、その他キャッシャ関連のプラグインを組み合わせると、10倍程度の劇的な改善(40%程度)が可能でした。

    1. サイトのレスポンス改善プラグインを未導入: モバイル・スコアは4~5%
    2. Autoptimizeプラグイン導入 : モバイル・スコアは40%

    サイトのスピード

    自分のサイトのスピードを知るには、Google Search Consoleを使っているなら、速度(試験運用版: PageSpeed Insights)で測定してくれます。

    お知り合いになっていただいている観音寺さんから、当サイトの速度が遅いことのご指摘を頂き、測定してみたところ、その結果は、4~5%とさんざんでした。

    これでは、誰もみてくれませんね。

    また、Chromeの拡張機能(Windows版)の「Lighthouse」でもサイトの速度を測定してくれます。Lighthouseでは、50%程度の結果でした。
    (Google Search Consoleは、どうやらLighthouseのエンジンを使っているようですが、測定結果は少し異なっているようです)

    そこで、対策としてプラグイン (Plugin)を探してみました。試したのは、

    「Autoptimize」

    です。

    PageSpeed Insightsの測定で、4~5%であった性能が、20~30%に劇的に改善しました。

    その後は、微調整を行いました。キャッシュ(cache)も当然良いのでは無いかと思って、キャッシュ・プラグイン (cache plugin) の併用効果として、

    「WP Fastest Cache」

    で確認しました。当サイトの環境ではこのプラグインでは逆効果でした。

    最後に、Google Analyticsが、時間を食っているのがわかったので、

    「Flying Analytics」

    https://wpspeedmatters.com/how-to-optimize-google-analytics-in-wordpress/

    で、Google Analyticsをミニ化してその改善具合を確認しました。

    詳細は、以下ご覧ください。

    サイトの測定結果の概要

    Autoptimizeの有無での測定概要は、以下の通りです。

    • PageSpeed Insightsでは、モバイルでの速度が4~5%、それが25%に改善 (これでは、まだまだですが、改善度は高いです)
    • Lighthouseでは、50%から90%、更に100%に改善

    さらなるスピードアップには、その他プラスアルファのPluginをリコメンドしてくれています。

    以下は、JavaScript関連、CSS関連、HTML関連について設定の有無で、どれだけ効果があったかをテストしてみました。

    Autoptimizeの効果 – Page Speed Insights測定

    Page Speed Insightsでの測定に際して、Autoptimizeの設定項目は、以下で行った設定検討の結果を元にして決めた項目にて、測定を行いました。

    図1. Autoptimizeの効果 – PageSpeed Insights測定結果

    Autoptimizeの効果 – Lighthouse測定

    設定項目を、(1)CSS, (2)JavaScriptおよび(3)HTMLの順番で、効果の出そうな順に設定し、Lighthoutsで測定しました。

    Autoptimize無し

    21%のPerformanceしか出ていません。

    Autoptimize有り

    以下では、Autoptimizeで各設定項目を段階的に有効化したときのLighthouseでの測定結果です。

    連続2回措定しました。cacheが効いているので、2回目の結果は少し良い値が出ています。

    • CSSコードの最適化
    • JavaScriptの最適化
    • HTMLの最適化

    (1) CCSコード設定

    CCSコード最適化を☑️
    Aggregate CSS-files?☑️
    インラインのCSSを連結☑️

    (1+α) CSSコード設定に更に、データを生成:画像をURI化を追加

    CCSコード最適化を☑️
    Aggregate CSS-files?☑️
    インラインのCSSを連結☑️
    データを生成 : 画像をURI化☑️

    以上の結果から、「データを生成 : 画像をURI化」は、あまり効果がなさそうなので、このチェックは外すことにします。

    (2) +α : JavaScript設定

    Aggregate JS-files?☑️

    JavaScriptコードの最適化の効果はあるようです。

    (3) +α : HTMLオプション – コード最適化

    HTMLコード最適化を☑️

    HTMLコードの最適化はそこそこ効果があるようです。

    最終的に設定した内容

    最終的に、以下の通りの設定に落ち着きました。

    • Autoptimize : JavaScript(JS)、CSSの設定のみ(数参照)
    • Cache : WordPress Pluginは不要、DS918+のSSD cacheがワークしているものと思われる
    • Google Analytics : 速度性能にそれほど寄与しないが、しばらくミニGoogle Analyticsを使用してみる

    プラスアルファ

    その他の併用効果

    (1) WP Fastest cache

    キャッシュの併用も試してみました。WP Fastest Cacheです。Fee版でも多数の設定項目があります。色々設定して、Page Speed Insightsで測定してみました。結局、無い方がスコアが高く出ることがわかりました。

    当サイトのWordPressはSynology DS918+に立てています。SSD cacheも追加で積んでいます。WP Fastest cacheの効果が出なかったのは、おそらく、SSD cacheがあるためと考えれます。二重のcacheは必要ないということですね。

    (2) Flying Analytics by WP Speed Matters

    最適な設定の組み合わせを探して、試行錯誤で設定、PageSpeed Insightsで測定を繰り返し、その結果を眺めていると、Google Analyticsが結構じゃましているようなレポートがあるのに気が付きました。

    以下の測定結果は、All in One SEOに、Google Analyticsを設定した条件で測定した結果です。

    以下の測定結果は、All in One SEOに、Google Analyticsを設定した条件で測定した結果です。レペートの診断結果の項目に「第三者のコードの影響・・・」とあります。次の図には、その詳細を示していますが、Google Analyticsが866msも使っています。

    デフォルトのGoogle Analytics
    ミニサイズのGoogle Analytics

    以下の測定結果は、All in One SEOから、Google Analyticsを外して、代わりにFlying AnalyticsでミニサイズのGoogle Analyticsを設定した場合の測定結果です。

    PageSpeed Insightsによる最終的な速度レポート

    以上の設定を全て組み込んで、PageSpeed Insightsで測定しました。

    当初、1桁だった速度性能が、モバイルで50%程度、今回の取り組み始めには、パソコンでの性能評価は、気にしていなかったため、パソコンの速度性能値は、参考値になりますが、モバイルよりも 高い値のがでます。

    モバイル
    パソコン

    まとめ

    指摘を受けなければ気がつかなかった、サイトの速度でしたが、当初1桁であったのが、50%まで速度性能を改善することができました。約10倍です。

    • JavaScriptの最適化
    • CSSの最適化
    • HTMLの最適化
    • Cacheの設置(Synology NASにSSD搭載のため、プラグインは逆効果)
    • Google Analyticsは、1/10にしたミニ化も少し寄与
    • Google Font: 削除設定で、モバイルが5~10ポイント早くなることを確認。測定毎に約半分の確率でスコア50を超えるようになった(ページの作りも簡素化していることも良い影響がでている)。しばらくこの設定で運用することにした(2020/02/13)

    今後

    更なる速度改善は、以下の項目が考えられますが、個人サイトで出来るものとそうでないものもリストしました。

    • WordPressのDatabase関連 : 最適化でできるらしい
    • 別のCache Plugin : WP Optimizeはすでにためしてみました
    • PHPバージョン : Ver.5よりVer.7が早らいしい
    • Budget.json: よくわからないキーワードですが。
    • DOM : 1500以下に抑えなさいと言われますが、綺麗に見せるstyleにするとトレードオフです。
    • CDN : 個人では無理?
    • インフラ頼み : 5G、今回のこんな苦労は要らなくなるかも

    追記

    その後、いろいと調べていると、Googleは、Mobile Firstであり、モバイルに対して特化したページ作りを求めていることが分かりました。

    既存のページをAMP(Accelerate Mobile Page)という技術で、速度改善を可能にする開発を行なっていることも分かりました。

    結局のところ、現在のページは、今後、生き残らないと判断し、AMP対応ページに移行することにしました。

    2020/2/3からAMPプラグインをインストールして、セッティングを開始しましたが、2ヶ月経過した時点で、広告の表示やページ表示の不具合なども解消できました。

    AMPプラグインにより、ページの表示速度は、GoogleSpeed Insightsのモバイルのスコアで、キャッシュプラグインを有効にしてですが、60~70%にまで改善しました。

    AMP対応にするには、プラグインを使用しますが、これを使うと、「Autoptimize」プラグインの使用は、必要無くなります。

    編集履歴

    2020/01/25 はりきり(Mr)
    2020/02/13 追記 (Google Fontの削除設定)
    2020/02/23 AMPに対応
    2020/04/15 「追記」を追記
    2020/05/15 文言整備

    関連記事