1

是否可以覆盖一类 woocommerce api?

我想覆盖 class-wc-api-customers.php 以便在创建新用户时不会发送电子邮件。

到目前为止,我发现的唯一可能性是直接编辑 include/api/legacy/v3.xml 中的文件。

如果我在我的主题中使用这种结构(mytheme/woocommerce/includes/api/legacy/v3/class-wc-api-customers.php),它就不起作用。

我还尝试调整 functions.php 中的 woocommerce_created_customer 挂钩,以便在通过 rest-api 创建新客户时不会发送电子邮件。不幸的是,这不起作用。

add_action('woocommerce_created_customer', 'my_customer_created', 10, 3);

function my_customer_created($customer_id, $new_customer_data = array(), $password_generated = false) {
    if (!$customer_id) {
        return;
    }
    return;

    $user_pass = !empty($new_customer_data['user_pass']) ? $new_customer_data['user_pass'] : '';

    $email = $this->emails['WC_Email_Customer_New_Account'];
    $email->trigger($customer_id, $user_pass, $password_generated);
}

谢谢你的想法。

4

0 回答 0