Cocoonフォーラム

サイト内検索
書き込みの前に以下の3点をご確認ください。
  1. 1つのトピックにつき1つの質問を書き込んでください
  2. 不具合・カスタマイズ対象ページのURLを提示高速化を無効にしてください
  3. 該当部分のキャプチャ・環境情報とともに書き込んでいただけると助かります

何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。

不具合・カスタマイズ対象ページのURL:

相談内容:

不具合の発生手順:

解決のために試したこと:

※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:

※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。

環境情報の取得方法はこちら。
https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
https://wp-cocoon.com/theme-trouble/

フォーラム利用ガイドリンク

  1. フォーラムガイドライン
  2. よくある質問と答え(FAQ)
  3. サポート対象外のケース
  4. 原因不明の不具合用トラブルシューティング
  5. トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw
  6. 真っ白画面でのエラーメッセージの確認方法
  7. ブラウザ環境チェックツール
  8. Cocoonカスタマイズ依頼

フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。

jQueryライブラリが読み込まれずJ...
 
共有:
通知
すべてクリア

[解決済] jQueryライブラリが読み込まれずJavaScriptが動作しない

8 投稿
3 ユーザー
5 Reactions
3,808 表示
chu-ya
(@chu-ya)
Illustrious Member Registered
結合: 3年前
投稿: 2946
Topic starter  

以下のフォーラムの最新版をダウンロードしたらJavaSciprtが動作しなくなり。

https://wp-cocoon.com/community/postid/67393/

●現象
jQueryライブラリが読み込まれなくなった。

●原因
「jQueryのバージョン選択機能の廃止」で
[Cocoon設定]→[その他]→JavaScriptライブラリ設定
の廃止だけでなく、lib/script.phpから以下の読込が削除された?

  • wp_enqueue_script_jquery_js
  • wp_enqueue_jquery_masonry

https://github.com/xserver-inc/cocoon/commit/86b8e50a244a873bf468b5c9e1d5e11b2342dc56#diff-0d73b49cf3f367d80d37411c49be743c6a3bfdbfffb5118e731bef210af528c5L15


   
わいひら reacted
わいひら
(@yhira)
Illustrious Memberサイト Admin
結合: 7年前
投稿: 17220
 

ご連絡ありがとうございます。
masonryに関しては誤って削除してしまったようです。
修正しておきました。

投稿者:: @chu-ya

jQueryライブラリが読み込まれなくなった。

jQueryに関してはWordPressコアの最新版(3.6.1)が読み込まれているかと思います。
動作しなくなったjQuery(もしくはプラグイン)はどういったものでしょうか。


   
chu-ya
(@chu-ya)
Illustrious Member Registered
結合: 3年前
投稿: 2946
Topic starter  

本件はクローズとします。

すみません。
高速化でJavaScriptを縮小化され以下を見逃してました。
jquery.min.js?ver=3.6.1

----------------------------------------------
テーマ名:Cocoon
バージョン:2.5.5.1
カテゴリー数:19
タグ数:146
ユーザー数:1
----------------------------------------------

JSが動かない根本原因、要注意です!!

●現象
子テーマJSに記述したコードに対し、consoleを見たら以下のエラーが出力されており。
Uncaught TypeError: $ is not a function

$(function() {★エラー
  $(document).ready(function() {
  var nowPos = 0;
  var offset = 50;

●原因
他のプラグインとの衝突を避ける為、WordPressコアjQueryライブラリには最後に以下の記述があり。
jQuery.noConflict();

●対策
上記記述は使えず。
一例として以下で囲む必要がある。

(function($) {
})(jQuery);

   
わいひら reacted
(@akira)
Famed Member Registered
結合: 7年前
投稿: 1657
 

JavaScript を縮小している時に、カルーセル(slick のやつ)は動きますか?

私の環境で変になります。slick が style 属性を追加していません。

jQuery に興味がないので詳しく調べていませんが、jQuery が縮小の対象になっているのが原因かもと思いました。Google Hosted Libraries から読み込む時は縮小の対象外だった気がします。

This post was modified 2年前 by Akira

   
わいひら reacted
chu-ya
(@chu-ya)
Illustrious Member Registered
結合: 3年前
投稿: 2946
Topic starter  

@akira さん

動かないです。
JavaScriptを縮小化すると、slickのclassが変になり。

例えばヘッダーモバイルボタンも同様でclassが以下のようになります。
<ul class="mobile-header-menu-buttonsmobile-menu-buttonshas-logo-button"
<ul class="mobile-header-menu-buttons mobile-menu-buttons has-logo-button"

投稿者:: @akira

oogle Hosted Libraries から読み込む時は縮小の対象外だった気がします。

確かにminify-js.phpで自サイトURLを含まないものを圧縮の対象としているようです。
この為、jquery.min.jsを除外するとカルーセル、ヘッダーモバイルボタンが正しく表示され。


   
わいひら reacted
わいひら
(@yhira)
Illustrious Memberサイト Admin
結合: 7年前
投稿: 17220
 

今回の目的としてはCocoon設定からjQuery3以外を選択できないようにすることだったので、大部分をリバートして、とりあえずajax.googleapis.comを使用することにしました。
chu-yaさんが書かれたjQuery.noConflict();のこともあり、他にも色々影響が出る可能性もあり、とりあえずまずは小さく変更することにしました。
お手数をおかけして申し訳ないです。


   
chu-ya
(@chu-ya)
Illustrious Member Registered
結合: 3年前
投稿: 2946
Topic starter  

jQuery.noConflict()を考慮してJS全て直しました笑

同梱された自サイトのjQueryライブラリの場合、除外しないとjavascript縮小化対象となり、カルーセルの動作に影響した事の方が大きいかと。

----------------------------------------------
テーマ名:Cocoon
バージョン:2.5.5.1
カテゴリー数:19
タグ数:146
ユーザー数:1
----------------------------------------------

  • jquery.masonry.min.jsが追加されている事を確認しました。
  • jQueryライブラリが外部読込である事を確認しました。
  • 以前の通り、$(function(){});記述でエラーとならない事を確認しました。
  • [Cocoon設定]→[高速化]→JavaScript縮小化「JavaScriptを縮小化する」にした場合、jQueryライブラリが縮小化されず、カルーセル、ヘッダーモバイルボタンが正しく動作する事を確認しました。

 

いい勉強になりました。


   
わいひら reacted
わいひら
(@yhira)
Illustrious Memberサイト Admin
結合: 7年前
投稿: 17220
 

ご確認いただきありがとうございます。
Cocoon自体もjQuery.noConflict()を考慮して書いていたつもりなんですが、対応できていない部分を発見することができて良い気づきになりました。


   
共有:

問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。

また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。

「いいね!」機能はフォーラム登録者のみが利用できる機能です。

CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。

フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。

最近の書き込みはこちら。

詳細なカスタマイズ依頼をするならこちら。

タイトルとURLをコピーしました