删除筛选器回调:删除类中的方法

时间:2016-05-08 作者:MrCalvin

我需要禁用此筛选器:

$message = apply_filters( \'woocommerce_mail_content\', $this->style_inline( $message ) );
Thestyle_inline() 函数存在于名为WC_Email.所以我试着:

remove_filter("woocommerce_mail_content", WC()->WC_Email->style_inline());
但这只是一个胡乱猜测,没有奏效。

指向完整apply\\u filters代码的链接:here

指向style\\u online()函数的链接:here

1 个回复
SO网友:birgire

请注意,要从woocommerce_email_content 过滤器,您首先需要通过以下方式进行注册:

add_filter( \'woocommerce_email_content\', ...some-custom-callback... );
但看起来您正在尝试从消息中删除内联样式。

我想您需要文本/html内容类型,因此请尝试使用(未测试)覆盖样式:

add_filter( \'woocommerce_email_styles\', \'__return_null\' );

相关推荐

Apply_Filters()对所需的参数进行切片

我正在尝试向WooCommerce订单中的每个退款行添加一个按钮(其功能超出了这个问题的范围,足以说明它需要退款id作为参数)。我发现这些行是在woocommerce\\includes\\admin\\meta Box\\views\\html订单退款中创建的。无法重写的php。然而,有一项行动:do_action( \'woocommerce_admin_order_item_values\', null, $refund, $refund->get_id() ); 这似乎非常适合我的