サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
Topic starter
2019年2月10日 17:53
いつもお世話になっております。
iPhoneとiPadでサイドバーの画像が、触る(スクロールする)まで表示されません。トップ、投稿ページとも同様の状態です。
AMPでは表示されています。
気がついたのは、1ヶ月以上前になります。
繰り返しになってしまいますが、サイドバーを開いても画像が表示されず、スクロールをしたときに表示されます。
触らなければ 画像は表示されないままスリーブで画面が暗くなります。
Cocoonと私のサイトがこのような状態です。
かうたっくさんと草村さんのサイトを確認してみると、表示されました。
●iPhoneでサイトバーの画像が表示されないサイト
https://wp-cocoon.com/
https://xn--w8jte276hx5vdnebu3f.com
●サイドバーの画像が表示されるサイト
https://bibabosi-rizumu.com/
https://web.monogusa-note.com/cocoon-breadcrumb-clone
(投稿記事のサイドバーに新着一覧があるのでそちらのURL)
どうぞよろしくお願いいたします。
2019年2月10日 20:18
申しわけないのですが、僕はiPhoneを持っていないので動作確認はできていません。
ただ、原因の切り分けのために一点確認させてください。
高速化設定のLazy Loadを無効にすると表示されますでしょうか?
2019年2月10日 20:56
iPhoneで確認してみました。
●iPhoneでサイトバーの画像が表示されないサイト
https://wp-cocoon.com/
Cocoonサイトは1分ほど待っても表示されませんでした。
kchanさんのサイト(?)は暫く待っても表示されませんでしたが、カルーセルが切り替わるタイミングでサイドバーの画像も表示されました。
わいひら reacted
Topic starter
2019年2月10日 21:04
がっきいさん、わいひらさん
ありがとうございます。
Lazy Loadを無効すると最初から表示されました。
他のトピックでLazy Loadで画像が表示されないと質問しているのに、そこに気づかずにすみませんでした。
Topic starter
2019年2月10日 21:34
ほんとですね。
がっきぃさんのサイトは、3秒くらいで表示されました。
2019年2月11日 02:13
もし有効化しておきたいって事でしたら、高速化のLazy Loadを除外する□欄に以下を追記すれば表示されると思います。
size-thumb120
ただリサイズされた120pxの画像が使われた場所も除外されると思います。
- トップなどのエントリーカード・次へ前へのページ送りナビ。
- 記事下の関連記事。
- あとどこだろ!?
ただkchanさんの設定で、この辺見ると使われてないようなので、多分?大丈夫かもです。
●サイドバーの画像が表示されるサイト
私はLazy Loadをoffにしてるので、表示される感じだと思います ?
わいひら reacted
2019年2月11日 03:02
IntersectionObserverがiOS Safariでは未実装みたいなので、
未実装ブラウザではスクロールとかリサイズとかのタイミングに画像位置を取得して画像をロードしているとか?かもしれませんね。
https://caniuse.com/#feat=intersectionobserver
確認するにも私には難しすぎてざっくりとした推測ですが… ?
わいひら reacted
2019年2月12日 00:59
実は私もLazyLoadを有効にするとiPhoneでサイドバーの画像が初見で表示されないのが気になっていたんですよね ?
スマホだとサイドバーが画面外の右の方に隠れている状態なので、試しに発火点が初期では左右20pxになっているところを
rootMargin: "500px 20px"
左右も500pxになるように変更してみました。
rootMargin: "500px"
私のブログでLazyLoadを有効にして試しているのですが、スクロールしなくても表示されるでしょうか?
わいひら reacted
2019年2月12日 05:24
確認ありがとうございました!
恐らく他のIntersectionObserver未実装のブラウザでも開いた時から表示出来るようになってるかと思います。
とりあえず私がやった事ですが、子テーマのfunctions.phpにLazyLoad読み込み用のコードをコピペしてrootMarginの値を書き換えました。
https://github.com/yhira/cocoon/blob/master/lib/utils.php#L366-L373
function wp_enqueue_lazy_load(){
if (is_lazy_load_enable() && !is_login_page()) {
wp_enqueue_script( 'polyfill-js', get_template_directory_uri() . '/plugins/polyfill/intersection-observer.js', array(), false, true );
wp_enqueue_script( 'lazy-load-js', get_template_directory_uri() . '/plugins/lozad.js-master/dist/lozad.min.js', array('polyfill-js'), false, true );
$data = 'const observer = lozad(".lozad", {rootMargin: "500px",threshold: [0, 0.5, 1.0]});observer.observe();';
wp_add_inline_script( 'lazy-load-js', $data, 'after' ) ;
}
}
以前kchanさんはPHPはあまり触りたくないと仰っていたと思うので、現状はかうたっくさんの書き込みの除外設定が一番簡単な対応方法だと思います。
もしくは何か他の、もっとスマートな解決方法があったらいいのですが~…
2019年2月12日 17:54
さすが、草村さん。これは、わいひらさんが修正される気がします。
もし、修正されるのなら、threshold: [0, 0.5, 1.0] の削除もされた方がいいかもしれません。
lazy load で使われている lozad.js は、交差を検出した要素に対しては監視を停止します(lozad.js の 57 行目から 69 行目)。
https://github.com/ApoorvSaxena/lozad.js/blob/master/src/lozad.js#L57
なので、threshold の 0.5 と 1.0 のタイミングではコールバックが呼び出されません。また、threshold のデフォルト値は 0 なので、0 だけの指定はいらない。ということで、この threshold の指定は不要かなと思います。
2019年2月12日 20:01
おお!草村さんありがとうございます!いいねを10個つけたい ?
その部分については、思いもつきませんでした。
確かに、スライドインメニューは画面の右側に、20px以上はみ出して格納されているので、発火しないのも今言われてみれば、ありえますね。
草村さんとAkiraさんが書かれたことを参考に、修正してみました。
https://github.com/yhira/cocoon/commit/33b6f1bc43b22828dbe5e118d431ba3f59db77a6
当サイトにも適用してみましたので、よろしければiPhoneでご確認いただけると幸いです。
草村 reacted
2019年2月12日 20:02
一応、修正版はこちらになります。
https://github.com/yhira/cocoon
最新ファイルをダウンロードする場合は、上記ページのダウンロードボタンからzipファイルをダウンロードしてください。
2019年2月13日 13:05
おかしな対処法じゃないか不安だったので安心しました!よかったです。
私の方でもiPhoneで確認したら、開いた時からちゃんと表示されていました。
修正ありがとうございます!
わいひら reacted
2019年2月13日 20:00
皆様、解決策と動作確認をありがとうございます ?
iPhoneノンホルダーの僕だけだったら、多分原因はわからなかったと思います。
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。