【Lazyload】WordPress5.5でAMPエラーを吐く問題

ITネット,Wordpress

WordPress5.5でloading="lazy"があるからAMPエラーを吐きます。最初は、Luxeritasの設定が変わった?プラグインが変わった?などと思いましたが、よく考えると最近、Wordpressが更新されバージョン5.5になったことを思い出し、更新点を思い出したところ、そういえばLazyloadが導入されていたなと思いだし、解決に至りました。

エラーの詳細

いつもの許可されていない属性または属性値です。内容は、

許可されていない属性または属性値が HMTL タグにあります。

属性「loading」はタグ「amp-img」で使用できません。

です。つまり、amp-imgタグ内にloadingが使われているということです。

AMPテストして検索すればわかると思いますが、「loading="lazy"」が問題になっていると思います。これは、Wordpress5.5でLazyloadが採用されたことに起因します。

WordPress 5.5では無条件でLazyloadがONになるので、function.phpを編集して無効化する必要があります。

 

「loading="lazy"」無効化コード

下記のコードをfunction.phpに追記します。

/* WordPress 5.5の「loading="lazy"」無効化 */
add_filter( 'wp_lazy_loading_enabled’, '__return_false’ );

良いと思っていても回りまわって問題が出る可能性もあるのですね。なかなか難しいものです。ちなみにWordpressのLazyloadを使う必要がある場合は上記のコードを削除する必要があります。

Luxeritasの場合、AMPを有効にしているとエラーになると思います。AMPを有効にしていない場合は、WordpressよりもLuxeritasのLazyloadの設定が優先されるようです。

ITネット,Wordpress

Posted by kei_kichy