从Wordpress插件中删除功能

时间:2020-10-07 11:56:52

标签: php wordpress woocommerce

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插件功能(随该功能插入的脚本)?

1 个答案:

答案 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 );
相关问题