WordPress(如何禁用jQuery的Gravity Forms包含())

我已经在我的网站上包含了jQuery, 但是当在Gravity Forms中使用一些条件逻辑时, 它会再次包含jQuery以及它自己的脚本。
输出如下:

< script type='text/javascript' src='http://www.srcmini.com//localhost:8080/wp-includes/js/jquery/jquery.js?ver=1.11.3'> < /script> < script type='text/javascript' src='http://www.srcmini.com//localhost:8080/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.2.1'> < /script> < script type='text/javascript' src='http://www.srcmini.com//localhost:8080/wp-content/plugins/gravityforms/js/jquery.json.js?ver=1.9.14'> < /script> < script type='text/javascript' src='http://www.srcmini.com//localhost:8080/wp-content/plugins/gravityforms/js/gravityforms.min.js?ver=1.9.14'> < /script> < script type='text/javascript' src='http://www.srcmini.com//localhost:8080/wp-content/plugins/gravityforms/js/conditional_logic.min.js?ver=1.9.14'> < /script>

我想做的是保留Gravity Form的脚本, 但不包括jQuery和jQuery migration。我自己包括这些人, 不希望GF为我做这些。
我已经搜索了包含这些脚本的句柄, 但是找不到正确的钩子。我有以下内容, 但它也排除了GF脚本, 这显然不是我想要发生的事情:
function remove_unwanted_assets() {// Gravity Forms plugin. wp_deregister_script('jquery'); }add_action('wp_enqueue_scripts', 'remove_unwanted_assets', 100);

这似乎排除了GF的一切。
任何帮助或指导, 我们将不胜感激。谢谢。
#1可靠地” 注销” 默认jQuery的唯一方法是将add_action()调用的优先级保持为10。这是因为Gravity Forms使脚本的优先级为11入队。然后, 你需要注册自己的jQuery版本在相同的句柄下:
function so_33280386_alter_assets() { // De-register the default version of jQuery wp_deregister_script( 'jquery' ); // Register a new version of jQuery under the same handle wp_register_script( 'jquery', 'https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js', false, '1.9.1', true ); } add_action('wp_enqueue_scripts', 'so_33280386_alter_assets', 10);

#2我试图完成同样的事情, 但发现了一个简单的解决方法。我在自己的已编译js文件中添加了jQuery, 所以我不希望WordPress的文件存在其中。只需注销脚本, 然后在不添加源的情况下重新注册它。
wp_deregister_script( 'jquery' ); wp_register_script( 'jquery', '', '', '', true );

我还使用其他一些代码片段来保持Ajax加载正确。
function gravity_js_to_footer() { return true; } add_filter("gform_init_scripts_footer", "gravity_js_to_footer"); // Fix the ajax jquery inline code issue when gravity js is being called in the footer //https://bjornjohansen.no/load-gravity-forms-js-in-footer add_filter( 'gform_cdata_open', 'wrap_gform_cdata_open' ); function wrap_gform_cdata_open( $content = '' ) { $content = 'document.addEventListener( "DOMContentLoaded", function() { '; return $content; } add_filter( 'gform_cdata_close', 'wrap_gform_cdata_close' ); function wrap_gform_cdata_close( $content = '' ) { $content = ' }, false ); '; return $content; }

结合这些内容, 我就可以不调用排队jquery, 也可以在页脚中包含所有内容。
【WordPress(如何禁用jQuery的Gravity Forms包含())】祝好运

    推荐阅读