要删除某个操作,首先需要传递用于添加该操作的相同调用。与普通函数或静态方法相比,钩子的区别在于,您已经在类的特定实例上传递了一个方法。注意使用$this
:
add_action( \'woocommerce_after_order_notes\', array( $this, \'checkout_consent_checkbox\' ) );
因此,在删除操作时,需要以相同的方式传递相同的实例:
add_action( \'woocommerce_after_order_notes\', array( $that, \'checkout_consent_checkbox\' ) );
在哪里
$that
是包含类的相同实例的变量。
为此,您需要找到该变量。这取决于插件最初是如何构建的如果类被实例化为如下全局变量:
global $wp_gdpr_wc_controller;
$wp_gdpr_wc_controller = new Controller_Wc;
然后,您将按如下方式删除它:
global $wp_gdpr_wc_controller;
remove_action( \'woocommerce_after_order_notes\', array( $wp_gdpr_wc_controller, \'checkout_consent_checkbox\' ) );