1

我在我的 WordPress 网站上使用 Gravity Forms 插件。我通过 HTTPS 提供页面,这破坏了表单。

看起来问题是该站点如何尝试加载 jQuery。页面上有 23 个 JavaScript 错误,这似乎是由于 jQuery 加载失败所致"Uncaught ReferenceError: jQuery is not defined"

如果我转到源试图提取 jQuery 文件的页面,你会看到error:https://code.jquery.com/jquery-1.7.1.min.js?ver=3.4.2

错误截图:

在此处输入图像描述

而这个截图是页面源码中的参考:

在此处输入图像描述

所以有人告诉我我想调查一下——这就是最终问题所在,但我真的不知道下一步该做什么。

是因为 Gravity Forms、WordPress 的 HTTPS 插件还是我的 SSL 证书而失败?

4

1 回答 1

4

code.jquery.com域不支持 https。您需要从您自己的域或从 Google 或 Microsoft CDN 加载 jQuery。

要通过 https 从您自己的域加载 jQuery,只需执行以下操作:

<?php wp_enqueue_script('jquery'); ?>

要通过 https 从 Google 的 CDN 加载它,请执行以下操作:

<?php 
function jquery_cdn() {
   wp_deregister_script('jquery');
   wp_register_script('jquery', '//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js', false, null);
   wp_enqueue_script('jquery');
}

add_action('wp_enqueue_scripts', 'jquery_cdn');

故意省略上述示例中的“https”;它确保 jQuery 将通过与您的站点相同的协议加载,无论是 HTTP 还是 HTTPS。

于 2012-11-05T12:28:23.403 回答