WooCommerce插件正在将脚本插入到我网站的页脚中。我一直试图删除它,但似乎没有任何作用。
以下操作用于将脚本添加到页脚:
add_action( 'wp_footer', 'wc_print_js', 25 );
我尝试通过将以下内容放在子主题功能文件中来删除此内容:
add_action( 'after_setup_theme', 'remove_wc_plugin_function', 0 );
function remove_wc_plugin_function() {
remove_action( 'wp_footer', 'wc_print_js' );
}
还尝试过仅将整个wc-core-functions.php文件替换为我的子主题,并注释掉相关功能,但这也不起作用。我假设运行子主题功能文件时该功能不存在。然后,我尝试从主页中删除所有jquery,但也没有删除该脚本。
add_action( 'wp_enqueue_scripts', 'my_deregister_javascript' );
function my_deregister_javascript() {
if ( is_front_page('home') ) {
wp_deregister_script( 'jquery' );
}
}
还尝试仅将整个wc-core-functions.php文件替换为我的子主题,并注释掉相关功能,但这也不起作用。如何摆脱页脚中的这个血腥脚本(或者最好只是摆脱特定的功能)?
TLDR:如何删除Wordpress插件功能(随该功能插入的脚本)?
答案 0 :(得分:3)
https://developer.wordpress.org/reference/functions/remove_action/:
要删除钩子,添加钩子时,$ function_to_remove 和$ priority 参数必须匹配。
该功能已使用
添加到了挂钩中add_action( 'wp_footer', 'wc_print_js', 25 );
但是您尝试仅使用remove_action( 'wp_footer', 'wc_print_js' );
来删除它,然后它将对第三个参数使用默认值10
。
因此,从操作中再次删除此功能的正确方法应该是
remove_action( 'wp_footer', 'wc_print_js', 25 );