質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

2回答

183閲覧

wordpressのSTINGER5でjqueryが動きません

bonkon

総合スコア7

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2018/04/04 22:54

wordpressで Bonko Channel♪ というサイトを運営しているのですが、jqueryのエラーが出てしまって困っています。
wordpressのテーマはSTINGER5を使用しており、Googleのウェブマスターヘルプフォーラム で質問した所、以下のような指摘を受けました。

エラー詳細:

  1. STINGER5でjqueryが動かない(エラー詳細: Uncaught ReferenceError: jQuery is not defined)。
  2. STINGER5のAsynchronous Javascriptが実行しているhead.jsの読み込み前にjqueryのメソッドが実行されており上記のエラーが出てしまう。
  3. STINGER5でAsynchronous Javascriptを使うときの設定 を参考に設定してみましたが、同様のエラー(Uncaught ReferenceError: jQuery is not defined)が出てしまいます。

コーディングに詳しいわけではないので、回答への受け答えで失礼な点があるかもしれませんがよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

了解致しました。また色々調べてみます。
何度も丁寧に返信頂き、ありがとうございました。

投稿2018/04/07 10:33

bonkon

総合スコア7

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

以下をお試しください。
・jqueryの読み込み記述
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js?ver=4.5.14"></script>
をjQuery()と使われている場所よりも上に配置する。
・jQuery()の記述を$と変更する
例:
jQuery(document).ready(function($){

$(document).ready(function($){

投稿2018/04/04 23:23

m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

bonkon

2018/04/05 01:04

早速のご返信ありがとうございます。本当に無知でもうし分けないのですが、要素を検証での記述場所にいきましたが、場所がみつかりませんでした。記述場所はどこになるのでしょうか?
m.ts10806

2018/04/05 01:09

提示のサイトをブラウザから「ソースを表示」であったのですが、WordPress側からだと場所はいじれないのかもしれませんね。 <script> jQuery(document).ready(function($){ ~~ </script> を下部に配置するようにはできますか?
bonkon

2018/04/05 03:10

要素の検証では、サイト名のindexファイルの中と見受けて、ffftpでindexファイルを確認しましたが、その記述が見当たりませんでした。テンプレートのfunction.php の中でも記述が見つかりませんでした。 <script> jQuery(document).ready(function($){ ~~ </script> の記述はfunction.php内に記述しても大丈夫なのでしょうか? stinger5でfunction.phpのjqueryの記述は下記です。 ↓ function register_jq_script() { if (!is_admin()) { $script_dir = get_template_directory_uri(); wp_deregister_script( 'jquery' ); wp_enqueue_script( 'jquery', '//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js',array(), false, false); } } add_action('wp_enqueue_scripts','register_jq_script'); 色々ご相談すみません。宜しくお願い致します。
m.ts10806

2018/04/05 03:42

上記記述は 回答に追記した <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js?ver=4.5.14"></script> を挿入する記述ですね。それより後に出るように調整したいですが・・。 WordPress環境が手元にないので別口でちょっと調査してみます。
m.ts10806

2018/04/05 03:44

<script> jQuery(document).ready(function($){ ~~ </script> の記述についてはlightbox+ColorBoxの指定のようですね。そこはどのように入れられているのでしょうか?
bonkon

2018/04/05 06:20

早速の返信ありがとうございます。本当に感謝です。 Lightbox Plus Colorboxプラグインの編集で lightbox-plus/js/lightbox.admin.jsの中に ↓ jQuery(document).ready(function($){ if (!$('#use_inline').attr('checked')) { $('.base_gen').hide(); } if (!$('#use_perpage').attr('checked')) { $('.base_blog').hide(); } if ($("#output_htmlv").attr('checked')) { $('.htmlv_settings').show(); } if ($('#rel').attr('checked')) { $('.grouping_prim').hide(); } ~ の記述が見つかりました。 こちらでしょうか? こちらの場所に教えていただいたコード及び jqueryを$に変換すればよろしいでしょうか?
bonkon

2018/04/05 06:23

すみません。 lightbox-plus/js/lightbox.admin.jsと lightbox-plus/js/lightbox.admin.min.jsに記述がありました。 minの方は jQuery(document).ready(function(a){a("#use_inline").attr("checked")||a(".base_gen").hide();a("#use_perpage").attr("checked")||a(".base_blog").hide();a("#output_htmlv").attr("checked")&&a(".htmlv_settings").show();a("#rel").attr("checked")&&a(".grouping_prim").hide();a("#use_class_method").attr("checked")&&a(".primary_class_name").show();a("#slideshow").attr("checked")||a(".slideshow_prim").hide();a("#rel_sec").attr("checked")&&a(".grouping_sec").hide();a("#slideshow_sec").attr("checked")||a(".slideshow_sec").hide(); a(".close-me").each(function() です。~ どちらに記述すればよろしいでしょうか?
m.ts10806

2018/04/05 06:32

えっと、基本的にminの方だけで良いはずです。minじゃない方の軽量版(インデントとか改行とかを削ったもの)がmin(minifiedの略)のはずです。 今回はjQueryが読み込まれる記述よりも前にjQueryの機能を使おうとしていることが問題です。 下記に簡単な検証コードを記載します。 以下はNG ---------------- <script> jQuery(document).ready(function($){ }); </script> <script src="https://code.jquery.com/jquery-1.11.1.js"></script> 以下はOK ---------------- <script src="https://code.jquery.com/jquery-1.11.1.js"></script> <script> jQuery(document).ready(function($){ }); </script> つまり、今回の例だと <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js?ver=4.5.14"></script> よりも後にくるように記述すればエラーは解消され、jQuery部分が正常動作するはずです。
bonkon

2018/04/05 10:59

丁寧に教えて頂きありがとうございます。感謝です。 順序が違う事は理解できました。 しかし、 ①lightbox-plus/js/lightbox.admin.min.jsでjQueryを$に変更+前列に<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js?ver=4.5.14"></script>を記述 ②stinger5のfooter.phpに<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js?ver=4.5.14"></script>を記述 2通り試してみましたが、まだエラーが消えません。 私の解釈がおかしいのでしょうか?本当に無知でも申し訳ございませんが、ご伝授宜しくお願い致します。
bonkon

2018/04/05 13:30

ちなみに、fanction.phpの2行目からは function register_jq_script() { if (!is_admin()) { $script_dir = get_template_directory_uri(); wp_deregister_script( 'jquery' ); wp_enqueue_script( 'jquery', '//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js',array(), false, false); } } add_action('wp_enqueue_scripts','register_jq_script'); の記述があります。
m.ts10806

2018/04/05 21:53

footer.phpに結果的にどのように記述されてどのようなエラーになっているかわかりませんが、 jQueryの本体自体はWordPress本体によりすでに読み込まれているはずなので、 footer.phpに改めて記述する必要はないように思います。 重複読み込みは競合が発生して正常動作しない要因になりえます。
bonkon

2018/04/07 10:34

何度も丁寧に返信頂き、ありがとうございました。感謝です。また色々調べてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問