🏡まったのブログ

【未解決】wp_is_mobile が PageSpeed Insights で効かない?

目次

    wp_is_mobile が PageSpeed Insights で効かない‥。

    !wp_is_mobile()としてPCだけ出力しているコードがある。通常のChromeのデベロッパーツールでスマホシミュレートするときはきちんと上記コードは出力しない。けれど PageSpeed Insights では出力されてしまうことがある(display: noneしている画像の遅延読み込みが出来てないと警告される)。

    WP Fastest Cache をクリアすると直る時がある。ただし設定で「Don't show the cached version for desktop to mobile devices」にチェックを入れている。

    というかWP Fastest Cache を停止してもだめ。

    https://mekemoke.jp/2013/02/1008.html

    このカスタムのis_mobile()を使ってもだめ。

    なので PageSpeed Insights のユーザーエージェントがモバイルのそれでないので、wp_is_mobile()is_mobile()でPCと判断されているのではないかと考えた。

    そこでis_mobile()を、下記を参考にユーザーエージェントにMobileAndroidが入っていたらモバイルと判定するよう書き換えた。

    https://www.monotalk.xyz/blog/page-speed-insights-%E3%81%AE-%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%82%92-google-analytics-%E3%81%AE%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E3%83%BC%E3%81%A6%E9%99%A4%E5%A4%96%E3%81%99%E3%82%8B/

    しかしだめ。

    Wp Fastest cache を停止しても起こるため、このプラグインの不具合ではないはずである。しかし停止しても起こらないときがあるので不可解にならざるを得ない。

    お客さんのサイトなので teratai lや stackover flow では聞きづらく‥詳しい方情報求む。