在我正在开发的一个插件中,我尝试用插件中的一个模板替换OOTB客户完成订单的电子邮件
施工单位:
define( 'BKF_WC_EMAIL_PATH', plugin_dir_path( __FILE__ ) );
add_filter('wc_get_template', array($this, 'bkf_customer_completed_order_template'), PHP_INT_MAX, 5);
功能:
function bkf_customer_completed_order_template($template, $template_name, $args, $template_path, $default_path) {
if( $template_name == 'emails/customer-completed-order.php' ) {
$template = trailingslashit(BKF_WC_EMAIL_PATH) . 'templates/' . $template_name;
return $template;
}
}
note the template is still pulling the default woo one
欢迎任何想法/意见!
1条答案
按热度按时间rsaldnfx1#
搞定了!
与我最初的问题中使用的方法不同,下面是对我有效的方法:
我创建了一个新类(类似于woocommerce/includes/emails/class-wc-email-customer-completed-order.php)--出于演示的目的,我们将其命名为
My_Custom_Class
然后,我在我正在处理的父类的构造函数中这样调用:
并添加了此函数: