2.2.9dから2.3.0cにアップデートするとLazzy Loadが動作しないようです。

Simplicityの特徴 フォーラム 不具合報告 2.2.9dから2.3.0cにアップデートするとLazzy Loadが動作しないようです。

  • このトピックには22件の返信、2人の参加者があり、最後にホリウチにより9年、 1ヶ月前に更新されました。
22件の返信スレッドを表示中
  • 投稿者
    投稿
    • #45569
      ホリウチ
      ゲスト

      初めて投稿させていただきます。ホリウチと申します。
      WordPress初心者なので、多機能なSimplicityに非常に重宝しております。

      表題の件なのですが、2.2.9dから2.3.0cにアップデートすると非ログイン状態の場合、Lazzy Loadがうまく機能せず、画像が表示されなくなってしまいます。
      WordPressの管理画面にログインした状態では問題なくLazzy Loadが機能し、画像が表示されます。

      2.2.9dにダウングレードすると再び表示されるようになりましたので、現在は2.2.9dに戻しております。
      ちなみに一つ前の2.3.0aへのアップデートした際も同様の現象になっておりました。

      不具合の出ているサイトのURLは下記になります。
      https://www.hori-uchi.com/2016/09/side-street-inn-on-da-strip/

      ご確認いただけますでしょうか?
      よろしくお願いいたします。

    • #45572
      hidekichi
      ゲスト

      特に問題ないようです。
      firefox、chromeで確かめましたが画像は表示されています。またlazyloadの挙動もしているように思います。

      もしホリウチさんのサイトに訪れたことがないパソコンがあれば(友人知人等のパソコン)でアクセスしてもらって確かめてもらっても良いですし、ご自身でするなら、プライベートウィンドウあるいはシークレットウィンドウで確認されてもよいかと思います。

      おそらくはアップデートされる前のキャッシュとかが(どれがと言うのは特定できませんが)ブラウザに残っていたりして表示できないだけなのかなぁと思ったりします。

      カスタマイズされる際やアップデート等の、以前の状況から変わると想定される時はできるだけプライベートウィンドウあるいはシークレットウィンドウを利用して確認を行いキャッシュやcookieの影響を受けないようにしてください。

    • #45573
      碧井
      ゲスト

      いつも大変お世話になっております。
      当該の件、私も遭遇しておりました。
      ただ、当方の場合はPC(Windows)のChromeのみ発生しておりました。
      同じChromeでもスマホの場合は起こりません。
      現状はLazy Loadの設定を解除して最新版を利用させて頂いております。
      一応、Chromeのキャッシュを削除したり、会社の他人のPC、駅ビルの共用PCでも試してみたのですが。
      プラグインも全て一度無効にしてみもしましたが、再現する状況でございます。

    • #45575
      hidekichi
      ゲスト

      > 碧井さん

      どういう状態になるのか再現して確かめたいので、どのような設定とプラグインを利用されているかを書いてもらってもよいでしょうか?

      またjetpackのphotonやautoptimize等のjsやcssをひとまとめにしたり、縮小化するようなpluginを併用されている場合はこれらを停止して確かめてみてください。

    • #45576
      アバター画像わいひら
      キーマスター

      僕もテストサイトを最新版にして試してみたのですが、Lazy Loadはちゃんと動作しているようです。
      http://simplicity.wp.xdomain.jp/post-2236/

      ですので、不具合再現方法がわからないと、今のところは以下に書かれている以上のことはわからないかもしれません。
      動作不良時のガイドライン
      プラグインをすべてオフにしても不具合が出るようなら、テーマカスタマイザーの設定状態が関連しているのかもしれません。
      テーマカスタマイザーの画像項目の設定状態だけでも、教えてもらってよろしいでしょうか。

    • #45577
      碧井
      ゲスト

      わいひら様、hidekichi様

      お世話になっております、お忙しいところ誠に有難うございます。
      取り急ぎ、テーマカスタマイザーの画像項目の設定内容を下記に列挙致します。
      アイキャッチを自動設定→チェック
      画像リンク拡大効果のタイプ→Lightbox
      画像効果→なし
      Alt属性値をキャプション表示→表示しない
      上記以外の項目は全てoffにしております。

      なお、申し遅れましたが、当方のサイトはこちらです。
      http://storiadiunminuto.net/

      他、インストール済プラグインの状況も後ほどご報告致します。
      何卒、宜しくお願い致します。

    • #45579
      hidekichi
      ゲスト

      firefoxでは、

      Permission denied to access property "href"
      ReferenceError: pagespeed is not defined

      chromeでは、
      Uncaught ReferenceError: pagespeed is not defined
      が見えるので、mod_pageSpeed等の何かしらのスクリプトが読み込めてないのではないでしょうか?

      これらが原因で他の部分にも影響がでているのではなかろうかと思います。

    • #45580
      碧井
      ゲスト

      hidekichi様

      お忙しいところお調べ頂き、誠に有難うございます。
      仰る通り、XSERVERの設定でmod_pageSpeedをONにしていました(現在はOFFにしています)。
      その状態でLazy LoadをONにして確認しましたが、やはりNGでした。

      当方の環境ですが、
      【XSERVER】
      PHP7.0.7,PHP高速化設定(FastCGI化) ON

      【WordPress】
      WordPress 4.6.1 (Simplicity2 child テーマ)

      [有効プラグイン]
      Akismet
      All In One SEO Pack
      Better Delete Revision
      Category Order and Taxonomy Terms Order
      CFiltering
      Count Per Day
      EWWW Image Optimizer
      Smart Slider 2
      W3 Total Cache
      WordPress Popular Posts
      WP Multibyte Patch
      リディレクション

      以上の様な状態です。

      先ずはご報告まで。
      何卒、宜しくお願い致します。

    • #45581
      technote
      ゲスト

      http://simplicity.wp.xdomain.jp/post-2236/
      にアクセスしたところ、以下のエラーが発生していました。
      lazyload

      おそらくこの修正が影響していると思います。
      https://github.com/yhira/simplicity2/commit/2ffb710071a1ff7b44f36b70f757dd834dc1730e

      ローカルで確認しましたが、jquery-lazyload-jsをコメントアウトで症状が治りました。

        $async_scripts = array(
          'comment-reply',
          'lity-js',
      //    'jquery-lazyload-js',
          'lightbox-js',
        );
    • #45582
      hidekichi
      ゲスト

      technoteさんので直るなら、コメントアウトではなく、$async_scriptsから、$defer_scriptsに移せば直ります。

      というかそれ実装されてたんですね(笑)

      それは、予めどんなjsが読み込まれているかを確認して、そのハンドルを調べた後(プラグインはサイトにあります)、asyncで読むかdeferで読むかを振り分けないとダメです。これは手動です。どんなスクリプトを利用されているのかは各々違いますので。

      参考: wordpressで読み込まれているjavascriptにdeferもしくはasyncをつける

      asyncはそれ単体で動くやつで無いと読み込む順番がおかしくなります。うちのサイトでもパッと見わかるjQuery関係のはdeferにしてたはずですが…まぁそこは各々調べてください。

      それよりもmod_pageSpeedはoffにされたと言うことですが、画像にはオンロード(※)="pagespeed.CriticalImages.checkImageForCriticality(this);
      というようなものがあります。このオンロードが参照しているスクリプトが読み込まれてないと思うんですよ。
      ※投稿が弾かれるのでカタカナで書いてます。
      それとも読み込まなくても動作するんですかね?

    • #45584
      hidekichi
      ゲスト

      ひとまず、W3 Total Cacheをキャッシュ削除して停止してから色々いじったほうが良さそうですね。

    • #45587
      technote
      ゲスト

      > technoteさんので直るなら、コメントアウトではなく、$async_scriptsから、$defer_scriptsに移せば直ります。
      $defer_scriptsへ移動で動作しました。

    • #45588
      hidekichi
      ゲスト

      こちらのサイトで、mod_pageSpeedとW3 Total Cacheの併用についてXserverに問い合わせられたそうですが、その答えが、

      mod_pagespeedの要件をW3 total cacheが包含しているため、W3 total cacheを利用する場合、mod_pagespeed設定をご利用されないことをお勧めいたしますので、こちらもあわせてご覧いただけましたら幸いです。

      と言うことです。なんでも速度面ではmod_pagespeedオンだけのが速いとか何とか。
      ただ、僕的には自動的に速くなるmod_pagespeedと、手動で設定できるW3 Total Cacheが使える場合、W3 Total Cacheを使いますかね。

      うちのサイトではどちらも使ってませんけれども(笑)
      mod_pagespeedは使えませんし、W3 Total Cacheもhtaccessを書き換えたりするわけですが、その内容的に使えない(サーバー側で拒否られる)と言う感じです。使ってないじゃなくて、使えないんじゃんと言われたらそのとおりなんですけどね(笑)

    • #45595
      碧井
      ゲスト

      hidekichi様、technote様

      お忙しいところ、誠に有難うございました。

      >$async_scriptsから、$defer_scriptsに移せば直ります。
      親テーマのfunctions.phpの中を検索して、
      ‘jquery-lazyload-js’,の箇所を、$defer_scriptsの方に移動しました結果、
      画像が表示されてLazy Loadが効くようになりました。
      有難うございました!

      なお、現状はmod_pagespeedはoffにしたままの設定にして、
      W3 Total Cacheを有効にしてあります。(一度、empty all cachesをしてみました…)

      取り急ぎご報告致します。

    • #45596
      アバター画像わいひら
      キーマスター

      失礼しました、実装したのをすっかり忘れていました;
      とりあえず修正した2.3.0dをアップしておきました。
      https://wp-simplicity.com/downloads/downloads2/
      1度、試していただければ幸いです。
      もし、これでも動作しなかった場合は、とりあえずチューニングは諦めて、該当部分をコメントアウトしたものを再度アップします。

      technoteさんありがとうございます!

    • #45598
      ホリウチ
      ゲスト

      わいひらさん、hidekichiさん、technoteさん、碧井さん、

      皆様のやり取りのおかげで、問題を解決できました!

      technoteさんの投稿から、自分のサイトの確認をしたところ同様のエラーが出ていたため、
      functions.php内のjquery-lazyload-jsを$async_scriptsから$defer_scriptsに移動したところ、無事表示されるようになりました。

      何かのプラグインか、カスタマイズの設定のいずれかが影響しているのだと思いますので、私の有効化しているプラグインをお伝えいたします。カスタマイズの設定はいろいろいじってしまっていてどこをいじったのか定かではありません。。

      [有効にしているプラグイン]
      Akismet
      All In One SEO Pack
      Amazon Web Services
      CFiltering
      Jetpack by WordPress.com
      Nginx Cache Controller
      Nginx Mobile Theme
      No Jetpack OPG by Jetpack Official
      Push7
      Search Regex
      SNS Count Cache
      TinyMCE Advanced
      WP Offload S3 Lite
      ログインページ

    • #45602
      ホリウチ
      ゲスト

      わいひらさん、

      2.3.0dにアップデートしたところ、問題なく画像が表示されるようになりました!
      迅速なご対応ありがとうございました!!

    • #45603
      碧井
      ゲスト

      わいひら様

      早速のご対応、誠に有難うございました。
      2.3.0dで正常にLazy Loadが動いております。

      誠に有難うございました。

    • #45604
      hidekichi
      ゲスト

      > 碧井さん、

      プラベートウィンドウかシークレットウィンドウにて、wordpressにログインして、w3 total cacheのキャッシュを再度クリアした後停止して、違うタブでサーバーのコンパネに行ってmod_pageseepdをonにして、再度違うタブでサイトを開き、確認して、mod_pagespeedのタブで設定をオフにして、サイトを開いているタブでリロードして、デベロッパーツールで、imgタブにオンロード=なんちゃらと言うのが取れた後に、w3 total cacheを有効にしてみてください。

      これでいけるかはわかりませんが、まだimgタブにpagespeedの設定が残っているようです。

      > ホリウチさん

      ホリウチさんのサイトは特にエラーは出ていなかったので、jQuery他のスクリプトの読み込み順だけの問題です。僕やわいひらさんが見た時は、たまたま上手く順番が正しく読み込めたのでしょう。
      もしかすると見てるブラウザとそのバージョンでの違いがあるかも知れません。

      それからそれでプラグインが全部だとしたら、何か忘れていませんか?
      WP Multibyte Patch、この神プラグインは日本語を利用するなら必ず入れておいてください。

      > わいひらさん

      例のasync、deferは表示の高速化はできますが、手動でやらないといけない部分もあるので、各々にやってもらうほうが良いかも知れませんね。まぁ公式が重いのを改善できるようにと言う前のトピックの流れから作ったものですので、実装するにはまだもう少し開発が必要かと思います。

      ハンドルが自動で拾えて、そのハンドルからどちらに仕分けるべきかを判断できるスクリプトやデータ、あるいはプラグイン画面で、それらを設定できる仕組みとか。これらができたら便利になりそうなんですけどね。

      僕も本格的なプラグインは作ったことがないので、どうしたものかはわかりませんが、なんとかなりそうでなかなか思うようには行かない感じです。

    • #45627
      ホリウチ
      ゲスト

      hidekichiさん、

      サイトまで確認いただきありがとうございます!
      WP Multibyte Patchもインストールしておきました。ご指摘ありがとうございます!

    • #45628
      hidekichi
      ゲスト

      > ホリウチさん

      昼にサイトを見た時はなかったと思ったんですが、今もう一度見てみましたら、
      __ytRIL is not defined

      と出てました。youtubeのチャンネル登録のボタンですかね?
      もしそうなら、

      参考: youtuneチェンネル登録ボタンのコード | jsFiddle

      こんな感じで、自分のチャンネル登録のIDだけ入れ替えればイケると思います。
      ボタンの設定で、「アプリケーションはボタンイベントをリッスンする。」にチェックを入れられたために別の上級者向けのコードが入っていて、読み込めてない部分があるのでエラーになっているのではなかろうかと思います。

    • #45629
      hidekichi
      ゲスト

      #45628 は、試してみたんですがやはりエラーが出ているようです。

      で、一応Googleの方にこれらの問題を報告している人もいたので、動作的には問題なさそうですし、しばらくこれは保留と言う感じですかね。

      参考: チャンネル登録ボタンの属性 | リファレンス

      を確認しましたが公式でも同じエラーが出ていますので、コンソールに今の所は表示されてるのがデフォルトのようでした。
      と、言うことで、これらは気にしておく必要はあるかと思いますが、今の所は保留事案として。そのうち修正されるだろうと思います。

      ちなみに、ログアウトしている状態では出ていないので、その辺りの問題のようです。ここからも訪問者には特に問題なし、ログインしている場合、自分で自分のボタンは押せないから問題無しと言うことですね。

    • #45636
      ホリウチ
      ゲスト

      hidekichiさん、

      別のエラーについても動作検証いただきありがとうございます!
      hidekichiさんのおっしゃる通り、しばらく様子見してみたいと思います。

22件の返信スレッドを表示中
  • このトピックに返信するにはログインが必要です。
スポンサーリンク
アドセンス(大)
アドセンス(大)