タグ: cache

  • [WP-Plugin] WP-Optimizeのキャッシュ機能はW3 Total Cacheに変更 [2021/10/25]

    [WP-Plugin] WP-Optimizeのキャッシュ機能はW3 Total Cacheに変更 [2021/10/25]

    ID19320

    以下の記事はふるくなっています.当サイトでは,W3 Total Cacheは,プラグインの削減化を進めた結果,使用しなくなりました.

    キャッシュ プラグイン

    サイト読み込みの高速化にはキャッシュを使用することが1つの方法です。約1年前にW3 Total Cache (W3TC)をテストしたことがあります。当時は、Cache pluginの複数をインストールしてテストしていましたが、キャッシュが複数存在するとコンフリクトが生じる可能性があるため良くないようです。そんなことも分からずまま実施したテストの結果は以下の表の通りです。

    コンフリクトするから良くないと言いながらも、W3TCの追加効果は少なからず出ていたので、導入候補としては捨て難いと思っていました。

    当時は、W3TCは開発段階の初期あったせいか動作が安定しなかったため、導入を見送りました。

    W3 TCWP-OptimizeAutoptimizeFlying AnalyticsAMPPSI*1
    (Mobile, PC)
    Memo
    EnableEnable(8, 20)
    EnableEnableEnable(20, 50)
    EnableEnableEnableEnable(50, 95)Good,
    EnableEnableEnable(50, 95)Good, AMPプラグイン無しでも。
    EnableEnable(20, 50)
    Cache plugin : W3TC, WP-Optimize
    Code minify plugin : Autoptimize, Flying Analytics, AMP
    *1: PSI: Page Speed Insights

    再検討の理由

    今回、cache pluginを再検討することにしました。1年前の当時W3TCのバージョンは、まだ、1になっていない0.XX程度で初期開発段階のものでした。2021/10/25現在では、パージョンも上がり、機能も充実し痒いところに届くCache Pluginとなったようです。

    cache pluginを再検討することになった理由は、永続的なオブジェクト キャッシュ (Persistent Object Cache)が有効化されていないと、WordPressのヘルスチェックでメッセージが出ていることに気がついたためです。まず、このPersisten Object Cacheについて調査したところ、Redis CacheとW3PCが、それに対応していることがわかりました。これら記事の中には、Redis cacheとW3TCの2つを有効化する方法の記事もありましたが、W3TCのみでcache pluginの構成で過不足はありません。

    因みに、Redis cacheでは、Persistent Object cacheのワーニングは出なくなったものの、その他ワーニングが出ました。W3TCでは、そのようなワーニングもなく、しかも、WP-Optimizeのキャッシュ機能と比較して専用に作られていることもあり、痒いところに手が届く機能を搭載したcache pluginとなっています。これまで使用していたWP-OptimizeからW3TCに全面的に変更することにしました。

    W3 Total Cacheの設定方法と使い方 (2021/10)

    https://fox-wp.com/plugins/w3-total-cache/

    永続的なオブジェクトキャッシュは有効化されていません (2021)

    https://arakoki70.com/?p=6475

    編集履歴

    2021/10/26, Mr. Harikiri

  • [WordPress] 高速化プラグイン「AMP」と定期的に全てのページの静的キャッシュ作成プラグイン-「WP Super Cache」で再構成した  [2021/11/05]

    [WordPress] 高速化プラグイン「AMP」と定期的に全てのページの静的キャッシュ作成プラグイン-「WP Super Cache」で再構成した [2021/11/05]

    ID22640

    はじめに

    このblogは、レンタル・サーバーではなくSynology NASを使っています。やはり、性能的にはレンタル・サーバーに勝てません。そこで、自宅のNASを使ったblogでは、以下のような工夫が必要になってきます。

    • ベージ表示などのレスポンスの改善
    • セキュリティの確保
    • NASの管理を含めたWordPressの管理

    この記事では、ページのレスポンスを向上させる2つのプラグインとして、「AMP」と「キャッシュ」・プラグインを組み合わせてについて解説しています。以前は、AMP対応をせずにページレスポンスの改善を目指していたので、AMPプラグインを使用せず、Autoptimizeプラグインを使用していました。現在では、AMP対応にしてページのレスポンスの改善を図っています。

    • AMPプラグイン
    • WP Super Cache
    • WP Optimize
    • WP Rocket

    ついでに、AMPプラグインで何度も生じている「検証済み」の問題についても経験談を載せています。

    これらのページレスポンスの向上プラグインなどのSoftwareの適用以前に、ネットワーク回線やHardwareスペックアップの問題もありますが、ここでは述べていません。

    ページのAMP化のみでもレスポンス改善は十分高い

    AMPプラグインは、HTMLを高速化するために元のHTML文やJavaScriptなどをサブセットに変換します。それがblogのページになります。投稿/ページの編集を終えて、「公開」すると、このタイミングでAMP化の変換が行われます。変換時間は、AMP化を適用していない場合と比較して、5~10秒程度余分の時間を要します。変換時間を要しただけのレスポンス改善は、目を見張ります。当サイトでは、モバイルの場合、GoogleのSpeedPage Insightsを使って測定すると、5~10倍のポイントアップが見られました。それでも、当サイトのMobileで閲覧した場合、30~40%でした。100%が最高値なのでまだまだです。PCでは、80%程度です。

    更にレスポンス改善するには、「キャッシャ」プラグインを追加します。そうすると、Mobileでは、50~60%に改善されました。キャッシュ・プラグインには、WP Super Cacheプラグイン、WP-Optimizeプラグインがありますが、主に、WP-Optimizeを使っています。

    今回の記事では、WP Super Cacheにするメリットについて解説します。

    AMP

    キャッシュプラグインを追加する

    キャッシュプラグインにも種々ありますが、これまでに色々試しました。その結果、ここ半年間使用し続けたのは、「WP-Optimize」プラグインでした。WP-Optimzieでは、データベースの最適化やデータベース・テーブルがアントールされているテーブルなのか、無効化されているプラグインのデータベース・テーブルなのか、すでに削除されているプラグインに関するデータベース・テーブルなのか、を示してくれます。この情報を確認しながら、データベース・テーブルを削除したり管理することができます。WP-Optimizeは、データベース管理プラグインであると認識するのが妥当です。WP-Optimizeは、キャッシュ機能もありますが、これまでに試したキャッシュ・プラグインの中で僅差ですが、最もレスポンス改善効果があったため、今回まで、キャッシュ機能も有効にしていました。

    プラグインは専用機能がいい

    WP-Optimizeプラグインには、多数の機能が搭載されています。キャッシュ機能には「プリロード」機能も使えます。全ての投稿/ページのキャッシュする機能です。

    今回、WP-Super Cacheプラグインをネットで発見して、キャッシュ・プラグインとして使用することにしました。その理由は、プラグインは多機能でない方が管理がし易いと考えているからです。それに、付属的な機能では、微調整ができないことが大です。WP-Optimizeのプリロード機能では、繰り返すプリロードの時間設定しかできず微調整ができません。もう少しでも攻め込みたい。やはり、専用機能に特化したプラグインを指向したいと思います。

    ただし、ネットで調べてみると、WP Super Cacheのプリロード機能、その他の機能は使用しないことを推奨しているようです。WP-Optimizeのブリロード機能を使用しても、キャッシュ機能が効いていないようです。と言うのは、WP-Optimizeでブリロードした後に、PageSpeed Insightsでランダムにベージ/投稿を選んで測定したところ、モバイルで50程度、PCで80程度とPCの測定値が低くなりました。間髪入れず、もう一度測定すると、モバイル50程度、PCで95程度と改善しました。何度やってもこの傾向は、どのページでも同様でした。

    結論としては、WP-OptimizeもWP Super Cacheも、プリロード機能は、使用しない方が良いということです。

    WP Super Cacheの設定のほんとのところ

    • プリロード機能は使用しない
      • 理由 : 古いキャッシュの表示が起こる場合がある
    • 投稿またはページが公開されたときにすべてのキャッシュファイルをクリアする機能は使用しない
      • 理由 : 新しい投稿を作成するたびに、WPスーパーキャッシュが数分間効果的に無効になってしまうためです

    WP Super Cacheの推奨設定

    結局推奨設定は、以下の図の通りになります。プリロードの使用を推奨していないのは残念です。

    上記推奨設定のサイト

    https://translate.google.co.jp/translate?hl=ja&sl=en&u=https://support.tigertech.net/wp-super-cache&prev=search&pto=aue

    WP Super Cache

    WP Super Cacheプラグイは、プラグインのキャッシュ/ブリロードに特化しています。多数の設定項目があり微調整も可能です。初心者には優しくて、デフォルトの設定についての解説もわかりやすいです。プリロードのキャッシュファイルの圧縮の設定もできます。

    繰り返すプリロードの時間の設定は、ももちろん可能です。初期値は600分です。プリロード処理が開始される時、及び100や200毎に、メールを飛ばす機能もあります。機能していることが分かるので安心ですし管理に役立っています。

    今回、WP Super Cacheの試用を開始しましたが、これまで使用していたWP-Optimizeの設定は、キャッシュを無効化し、データベース管理機能のみを使用している状態に設定しました。

    SpeedPage Insightsによるレスポンスの測定結果は、従前の設定の場合と比較して同等の結果でした。しばらく攻め込んでみたいと思います。結果は、随時、追記していきます。

    WP-Optimize

    WP-Optimizeは、キャッシュ機能だけではなく、データベース管理、イメージ圧縮などの複数の機能を備えています。

    WP Rocket

    kinstaというレンタルサーバーがあります。日々、パフォーマンス改善を進めていて、WP Rocketによるキャッシュ機能に関する記事がありました。その記事では、プリロード機能は、逆にパフォーマンス低下になるので、有効化しないことを推奨しています。プリロード機能は、理想としては良い機能なのですが、実際には、技術として実用化はまだのようです。

    Kinsta and WP Rocket: Now Speeding up WordPress Together, 2020/10

    https://translate.google.co.jp/translate?hl=ja&sl=en&u=https://kinsta.com/blog/wp-rocket/&prev=search&pto=aue

    WP Super CacheとWP-Optimizeの比較

    約900ある投稿とページをプリロードする時間を比較しました。先ず、全ての投稿とページについて、AMPで再検証します。全てが完了してから、ブリロード機能を実行しました。その結果、WP Super Cahceでは約50分、WP-Optimizeでは約25分でした。WP-Optimizeの方が高速でした。

    設定の際に思いもよらず得られた懸案の解決

    AMPの再検証エラー問題

    AMPプラグインを使用していて、数ヶ月前の9/21に投稿/ページの「再検証」が、以下のエラーログと共に不可になっていました。

    • cURL error 28: Operation timed out after 15001 milliseconds with 0 bytes received. Please check your Site Healthto verify it can perform loopback requests. If you are stuck, please search the support forum for possible related topics, or otherwise start a new support topic including the error message, the URL to your site, and your active theme/plugins. Please include your Site Health Info.

    ネットで調べてみましたが、DNSが悪いので、ローカルにDNSを立ち上げろとか、AMPのサポートでは、AMPプラグインによる不具合ではないとか、結局、原因を見つけることは、できずにいました。

    WP Super Cacheのワーニングのお陰

    WP Super Cacheを導入後、blogのフォルダーにパーミッション設定がおかしいので修正するように、というようなワーニングが出ました。そこで、NASにログインして、chmodコマンドで、そのフォルダーのパーミッションを設定して確認をしている時に、それは起きました。

    WordPressの管理者画面の左のメニューが、突然シンプルになりました。原因は、プラグインの全てが無効になっていた事でした。パーミッションの設定を間違えたことで、WordPressがプラグインにアクセスできなくなり、それを受けてWordPressが全てのプラグインを無効化したものと考えられました。

    その後の対応

    パーミッションを元に戻して、プラグインが認識されるようにしました。無効化になっているプラグインの全てを1つ1つ有効化していきました。

    その結果

    AMPプラグインで不可であった「再検証」が問題なく機能するようになっていました。これまでは、なんだったのか?

    キャッシュのブリロード

    再検証を完了した後は、WP Super Cacheによる「ブリロード」を実行しました。

    広告表示の確認

    Advanced Adsは、AMPページ対応の広告表示プラグインです。色々な設定が可能です。これらの表示について、実際の投稿/ページを表示させて確認しました。

    まとめ

    今回は、AMPプラグイン導入していることを前提に、キャッシュ・プラグインの変更について解説しました。また、相変わらず、AMPプラグインにおける「検証済み」において検証ができない記事があります。また、リストにすら表示されない問題もあります。その問題となる要因は、画像数が多かったり、記事が大きかったり、など色々と考えられます。一方で、シンプルな文字のみの投稿、文書量が少ない、埋め込みリンクがない場合には、ほとんどは問題が生じることはありません。マシンのパワー不足があるのかもしれません。今後も検討を続けます。

    以上

    編修理歴

    2020/11/07、はりきり(Mr)
    2020/11/15、追記 (プルロード機能は使えない)
    2020/12/11、追記 (文言整備)
    
  • [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] WP-Optimizer プラグイン [2020/09/24]

    [WordPress] WP-Optimizer プラグイン [2020/09/24]

    WP-Optimizer

    機能

    実は、速度の改善に必要な機能として、コード最適化に並ぶ、もう一つの重要アイテムがあります。それが、cache(キャッシュ)です。HDDから読み込むことは、通常の作法になりますが、cacheを使うとは、再度読み込むのではなく、特定のHDD領域や電子記憶媒体(SSDなど)に期限付きで一時保管されており、要求があったときに、そのキャッシュを出力する仕組みです。

    残骸を削除

    プラグインを色々と試している内に、プラグインが作るデータベースが消えずに残っていることがあります。そのような場合は、このWP-Optimizeプラグインが役に立ちます。

    下図のように、データベースには、テーブルが目的に応じて作られます。そのテーブルがインストールされているプラグインによるものなのか、インストールしているものの無効になっているプラグインによるものなのか、現在有効となっているプラグイン(これは削除できなくなっている)なのかを示してくれます。確認して削除できます。

    図1. WP-OptimizeのDatabase Tableの管理機能
    編集履歴
    2020/02/25 Mr.HARIKIRI
    2020/09/24 追記 (Database Tableの削除について)
  • [WordPress] Lazy Load Optimize プラグイン

    [WordPress] Lazy Load Optimize プラグイン

    はじめに

    画像が多いサイトでは、画像のロード中に、「固まっているように見える」、「文字も表示されない」、では、訪問者は去っていきます。そこで、文字を最初に表示し、画像は、ずぼらにあとから(lazy)ロードする仕組みにするためのプラグインが存在します。

    Lazy Load Optimize

    Lazy Load機能は、いろいろなプラグインに、付属的に組み込まれていることが多くあります。XWWW Image Optimizer、Autoptimizeにもあります。これらからは、その機能を切って、Lazy Loadのみでと有効にしておきましょう。

    編集履歴
    2020/02/25 Mr.HARIKIRI
  • [WordPress] EWWW Image Optimize プラグイン

    [WordPress] EWWW Image Optimize プラグイン

    EWWW Image Optimize

    写真はどんどん増えていく

    投稿を始めたばかりは、写真をどんどんアップして投稿すると思います。最初はそれでいいので、どんどん投稿して慣れるのが肝要です。

    しかし、気づけば、画像サイズがまちまちで、大きいサイズは容量も大きくて、表示速度が鈍化します。

    いずれ、速度問題は気になってきます。

    EWWW Image Optimizerは、画像の圧縮・JPEG → PNG / PNG → JPEG変換、など、Upload毎、一括変換なども可能です。

    Free版には500枚のクレジットがついています。当サイトでは、blog開始後1年で写真の数は、2000枚弱に達したので、3000枚(+最初のクレジット500)までのAPI Keyを約1000円でPayPalしました(2020/02/11)。

    編集履歴
    2020/02/25 Mr.HARIKIRI
  • [WordPress] Autoptimize プラグイン – サイト・速度改善  [2020/02/25]

    [WordPress] Autoptimize プラグイン – サイト・速度改善 [2020/02/25]

    はじめに

    当サイトは,WordPressで構築しています.現在ではシンプル化進めAMP化しているため,当該プラグインは使用していませんが,AMP化する以前には,レスポンスを改善する必要性に染まられました.その時に,レスボス改善に種々のプラグインを試した1つがこの「Autoptimize」です.作者は,営利目的で開発しているのでないと言っているようですが,性能が悪いわけではなく,逆に性能は高い方です.当サイトでもAMP化までは,最後まで利用させてもらったプラグインです.

    Autoptimizeプラグイン

    主な機能は、コードの最適化です。JavaScript, CSS, htmlのコードを最適化することで、当サイトでは、劇的な速度の改善がありました。

    実は、どんなサイトでも、速度対策は必ずしています。例えば、レンタルサーバーでは、マシンパワーです。マシンパーは、CPU性能、SSD化などあると思います。個人でNASを立ち上げ、そこにWordPressを立ち上げている場合は、それらのパワーには勝てません。そこで、Autoptimizeプラグインの登場です。

    表示速度が遅いと、途中で去っていく心理は、理解できると思います。Autoptimizeは、WordPressで使われているJavaScript, CSS, htmlなどのコードを最適化します。

    これは、劇的です。

    必須の機能ですが、そのこの驚きを知るには、最初からインストールしていても速さを実感できないので、それを知りたい方は、インストールだけしておいて、ある時、有効化すれば体現できます。

    これまで、Autoptimizeの有効化/無効の切り替えで、WordPress上に問題を起こしたことはありません。安心して試せると思います。

    注意点)

    Google Adsense広告の非表示になる問題が報告されていますが、HTML最適化の項目にて、合わせて「HTML、コメントを残す」もチェックすれば問題が起こらないとのことです。

    編集履歴

    2020/02/25 Mr.HARIKIRI
    2023/10/20 追記(はじめに)
  • [WordPress] キャッシュプラグインの比較 – 「WP Fastest Cache」 vs 「WP-Optimize」[2020/07/23]

    [WordPress] キャッシュプラグインの比較 – 「WP Fastest Cache」 vs 「WP-Optimize」[2020/07/23]

    キャッシュプラグインの性能比較

    Autoptimizeをインストールしている前提で、キャッシュプラグインを以下のもので改めて比較した。追加としてAutoptimizeプラグインの機能を包含するWP-Optimizeプラグンに統合も検討した。

    • Autoptimizeプラグインをインストールしていることを前提
    • キャッシュ・プラグインの比較
      • Faster cache
      • WP-Optimize

    Faster cache

    WP-Optimize

    測定方法

    • PageSpeed Insights (PSI) でサイトを読込みスコアを計測

    測定結果

    ネガティブコントロール

    • キャッシュ・プラグインを無効化で計測
    • 計測結果 : 28 (この値のバラツキは殆どない)

    Faster cacheのキャッシュ機能を有効化

    • 計測結果 : 35前後

    WP-Optimizeのキャッシュ機能を有効化

    • 計測結果 : 42前後

    結論

    1ヶ月前に比較検討して、WP-Optimizeを選んだのは、間違えていなかったようだ。以下の組合せがベターである。

    • Autoptimizeプラグイン
    • WP-Optimize

    追加情報

    Autoptimizeの機能にhtml, cssなどの最適化機能があります。実は、WP-Optimizeにもその機能が含まれているのですが、Autoptimizeを有効化している場合、WP-Optimizeでは、その機能を無効化していました。他のプラグインとの組み合わせを比較するために、そうしていました。

    WP-Optimizeがベターであることがわかったので、次は、Autoptimizeの機能を包含しているWP-OptimizeのみでPSIスコアを確認してみたところ、Autoptimizeを無効化して、WP-Optimizeに統合してもPSIスコアは、同等であることがわかりました。

    現在は、Autoptimizeプラグインを無効化し、WP-Optimizeは有効化のままにして、Autoptimizeの機能にあたるMinifyを有効化しています(2020/07/23)。

    WP-Optimize – Minify
    編集情報
    2020/02/18 はりきり(Mr)
    2020/05/01 文言整備
    2020/07/23 追記(WP-Optimizeに統合可能)
  • [WordPress] PhastPress  プラグイン Ver.1.33 – Databaseを不適正にいじってしまう(バックアップ教訓)

    [WordPress] PhastPress プラグイン Ver.1.33 – Databaseを不適正にいじってしまう(バックアップ教訓)

    注意

    この記事は、2020/1現時点での記事です。PhastPressプラグインで起きた問題は、当時のものなので、現時点では改善されていると思われます。このプラグインでの不具合は、今後のプラクインの導入時にはバックアップを取ることをお勧めする教訓を含みます。そのために、あえて不具合の詳細を示しています。

    前回までに、(0)「Autoptimize Ver. 2.6.1」プラグイン(CSS, JavaScript, HTMLの最適化)をペースとして、(1)キャッシュ・プラグイン、(2)画像遅延ローダー・プラグイン、(3)画像最適化・プラグイン、およびFlying Analyticsでとりあえずの最適化を完了した。

    1. Autoptimize Ver.2.6.1
    2. キャッシュブラグイン
    3. 画像遅延ローダー
    4. 画像最適化プラグイン
    5. Flying Analytics

    システム構成

    Synology NAS

    • 2020/07現在
    • DS920+ (DS918+からWordPressを載せ替え, 2020/07)
    • Disk Station Manager, Version 6.2.3-25426 Update 2 (2020/09/16現在)

    WordPress

    • Version : 5.5.1-ja
    • Theme : Twenty Twenty
    • Editor : Gutenberg (標準エディタ)

    今回は、「Autoptimize Ver. 2.6.1」プラグインの代替プラグインとして「PhastPress Ver. 1.33」を試してみた。

    方法

    1. 「Updraftplus Ver. 1.16.21」プラグインで、全てをバックアップ。以下の種類がバックアップされる
      • プラグイン
      • テーマ
      • アップロード
      • その他
      • データベース
    2. PhastPress」プラグインをインストール、有効化
    3. なにも設定せず、PageSpeed Insightsで速度スコアを測定
      • 1回目 : 40
      • 2回目 : 45
      • 3回目 : 56
    4. 50代のスコアに喜ぶ
    5. Safariでブラウズ
      • あるはずの画像が1つもない
      • 画像はリンクを貼っていたので、タップすると→画像が現れた
      • 画像が無いため、その分のスピードが速くなったものと解釈
    6. 投稿をエディタで確認
      • 画像は表示されている
    7. 元に戻すことにした
    8. 「Updraftplus」プラグインで復元
      • まず、プラグイン、テーマの2つを復元。1分以内で完了
      • Safariでブラウズ→画像が見えない
      • 更に、アップロード、その他の2つを復元。1分以内で完了
      • Safariでブラウズ→まだ、画像は見えない
      • 最後に、データベースを復元。1分以内で完了
      • Sarariでブラウズ→アイキャッチゃ画像、記事内の画像、最近の投稿に付属の小さい画像の全てが見えるように復元できた
    9. スコア確認: やはり50代には乗らない
      • 1回目 : 37
      • 2回目 : 46
      • 3回目 : 47
    10. 1つバグがあれば、多数のバグがあると考えられる。もう少し熟成するまで「PhastPress (現バージョン 1.33」は使用しないこととした。

    結論(教訓)

    1. クリティカルな影響を及ぼすと考えられる機能のプラグインは、あまり若いVersionは危険であると承知すべし。
    2. バックアッププラグインである「UpdraftPlus Ver.1.16.21」プラグインのバックアップ機能と復元機能は、正常であることが確認できた。

    2020/01/29 ばりきり(Mr)

    WP] Autoptimizeの威力 – ブログ・サイトのスピード改善対策プラグイン

    https://harikiri.diskstation.me/myblog/wordpress/7804/

    Google Console Search – Page Speed Insightsを使う

    https://harikiri.diskstation.me/myblog/wordpress/4372/

    [WP] WP-Optimizeのcache設定 – Autoptimizeとの併用効果

    https://harikiri.diskstation.me/myblog/wordpress/8049/

    WP] 遅延読込プラグインはどれがいい? (2020)

    https://harikiri.diskstation.me/myblog/wordpress/8071/
  • [WordPress] WP-Optimizeのキャッシュの設定 – Autoptimizeとの併用効果

    [WordPress] WP-Optimizeのキャッシュの設定 – Autoptimizeとの併用効果

    ID14373

    AutoptimizeとWP-Optimizeの併用

    前回のAutoptimizeの設定では、cacheは逆効果でした。

    (当時の記事の補足。原理をよく考えるとわかりますが、キャッシュは複数あるとコンフリクトを起こしてしまうため、複数のキャッシュ・プラグインの使用は避けるべきです。導入した結果がよかったとしても, 2021/10/30 by Mr. Harikiri)

    ページのスピードアップをするには、以下の知識が必要です。この記事の中では、このことを知らずにテストしていた頃の記事なので、以下の知識について先ずは知っておいてください。

    Googleは、モバイル・ファーストとしてAMPという技術/ルールを提唱しています。このルールは、過度なJava, CSSなどのコードをシンプルにするように求めています。それによって、軽量化されてページの読み込みスピードが向上します。AMPに対応させるにはプラグインを使用することができます。その場合、この記事の中で評価しているAutoptimizeプラグインは、使用を避けてください。その理由は、AutoptimizeがAMPに対応していないからです。AutoptimizeもAMPと同様の目的にJava, CSSのコードを軽量化する独自の方法を使っています。おそらくコンフリクトします。blogをAMPに対応させない場合は、Autoptimizeプラグイン、または、その他の同様のプラグインを、AMPに対応させるには、AMPプラグインを使う用にして、それぞで使い分ける必要があります。

    キャッシュ・プラグインは、AMPプラグイン、Autoptimizeプラグインとは異なる原理で動いているので、併用は可能です。その場合、AMPプラグインに適するキャッシュ・プラグインがあるとでしょう。同様に、Autoptimizeプラグインに適したするキャッシャ・プラグインがあるはずです。

    PageSpeed Insights

    https://pagespeed.web.dev

    WordPressのdatabaseの最適化に、WP-Optimizeをインストールしました。

    このプラグインには、cache機能もあります。cacheをONにしてPageSpeed Insightsで測定しました。

    WP-Optimizeには、画像の遅延読み込み「Lazy Load」機能があるため、EWWW Image Optimizerなどを使っている場合、同じ機能がdefaultで有効になっているので、どちらかを無効に設定します。コンフリクトするとPageSpeed Insights (PSI)のスコアが5ポイント程低下します。

    その他の設定は、前回の記事を継承しています。

    結果

    WP-Optimizeプラグインのcache機能をONにしてSPIモバイル・スコアを測定した結果、更なる速度改善の効果があり、Autoptiizeプラグインとの併用効果が確認できました。

    WP-OptimizeプラグインのPage cachingをしない場合、ページスピードは、モバイル/パソコンそれぞれ40/68でした。

    WP-OptimizeのPage cachingをONすると、ページスピードは、モバイル/パソコンそれぞれ52/82となり少し速度が改善しました。

    • cache: off – SPIスコア:
      • モバイル : 40
      • パソコン : 68
    • cache: on – SPIスコア:
      • モバイル : 68
      • パソコン : 82

    まとめ

    PageSpeed Insightsによるモバイル・スコアは、cacheをONにすることで、モバイル40→52、パソコン68 → 82にスピードアップしました(2020/01/25現在)。

    編集履歴

    2020/01/25 はりきり(Mr)
    2020/05/29 文言整備、追記(まとめ)
    2021/11/20,修正(モバイル/パソコンの測定データのソース写真取り違え)