WordPressサイトを常時SSL化したら「jQuery is not defined」になってプラグインが動作しなくなった
WordPressをAmazon CloudFrontで配信してついでにACM(AWS Certificate Manager)を使って常時SSL化するに書いてましたが、先日このサイトをAmazon CloudFrontからの配信にして、ついでに常時SSL化しました。
目次
プラグインが動かなくなった
それ以降、いくつかのプラグインが動かなくなったなと思って。
特に、
Crayon Syntax Highlighter、
Lightbox Plus Colorbox
は見に来てくれた人に不便かけるな〜と思ってまして。
調べてみたら jQuery is not defined
で、ちゃんとしようと思って調べてみたら、CloudFrontの設定が原因じゃなくて、常時SSL化の方が主な原因でした。
Chrome Developer Toolで確認です。
ページ読み込み時に該当のプラグインから「jQuery is not defined」が出力されてます。
なので、動かない、と。
見てみたら Mixed Content
じゃあなぜjQueryが参照できてないのか。ですが。
その上に
「Mixed Content: The page at ‘https://www.yamamanx.com/’ was loaded over HTTPS, but requested an insecure script ‘http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js?ver=4.8.1’. This request has been blocked; the content must be served over HTTPS.」
と出てました。
Function.phpで修正
なので、WordPressの[外観]-[テーマの編集]で、Function.phpを確認するとこうなってました。
(テーマはStingerです。)
1 2 3 4 5 6 7 8 9 10 |
<?php function register_jq_script() { if (!is_admin()) { $script_dir = get_template_directory_uri(); wp_deregister_script( 'jquery' ); wp_enqueue_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js',array(), false, false); } } add_action('wp_enqueue_scripts','register_jq_script'); |
これをhttpsに変えて解決。
テーマは新しいのを使った方がいい
最近のStingerでは下記のようになっていた同じ現象は起こらないですね。
なので、テーマは新しいのを使った方が良さそうです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
if ( !function_exists( 'st_register_jq_script' ) ) { /** * jQuery/スクリプトの読み込み */ function st_register_jq_script() { wp_deregister_script( 'jquery' ); wp_enqueue_script( 'jquery', '//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js', array(), '1.11.3', false ); wp_register_script( 'slick', get_template_directory_uri() . '/vendor/slick/slick.js', array( 'jquery' ), '1.5.9', true ); if ( isset($GLOBALS['stdata30']) && $GLOBALS['stdata30'] === 'yes' ) { wp_enqueue_script( 'slick' ); } if ( isset($GLOBALS['stdata64']) && $GLOBALS['stdata64'] === 'yes' ) { wp_enqueue_script( 'smoothscroll', get_template_directory_uri() . '/js/smoothscroll.js', array() ); } } } add_action( 'wp_enqueue_scripts', 'st_register_jq_script' ); |
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
WordPressのサイトヘルスの推奨に従って使っていないテーマを削除した
WordPressをバージョンアップしましたら、サイトヘルスってメニューができて …
-
WordPressの記事を公開日時に関係なくソート順を変更する
PostMash Customを使う WordPressのプラグインでPostM …
-
EC2 Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(手順整理版)
ブログサイト(WordPress)をレンタルWebサーバーからAWSに移設する事 …
-
WordPressのPHPを7から8にしたらプラグインのエラー “Array and string offset access syntax with curly braces is no longer supported”
WordPressのPHPを7から8にしたら次のエラーが発生しました。 PHP …
-
WordPressの記事のフッターに同じ内容を表示する
ブログの下部全ページに同じ内容を表示させたいときってありますよね。 イベントの案 …
-
WordPressにSimple GA RankingとGoogle Analytics Post Pageviewsで記事ランキングを表示する
この記事はWordPress Advent Calendar 2018に参加した …
-
ホームページやサイトがiPhone,iPadのホーム画面に追加された時のアイコンを設定しておく
headタグでapple-touch-iconを指定 [html] [/html …
-
Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(失敗、手戻りそのまま記載版)
勉強のためブログサイトを長らくお世話になったロリポップさんから、AWSに移設する …
-
PHP7.3 Crayon Syntax Highlighterのエラー対応と削除したプラグイン
Amazon Linux2のPHPを7.2から7.3へアップデートしましたでアッ …
-
WordPressでかんたんにフォームを使用できるWPForms Lite
このブログサイトではないのですが、WordPressでかんたんにフォームを作れる …