首页 文章

Woocommerce - 需要根据邮政编码向特定地址发送电子邮件

提问于
浏览
1

基本上,在woocommerce中,您可以选择在WooCommerce - >设置 - >电子邮件 - >新订单中输入发送已完成订单的人的多个电子邮件地址(以逗号分隔) . 但我需要一种方法,根据订购产品的客户的邮政编码,只发送给其中一个收件人 . 或完全覆盖woocommerce的处理方式 .

我如何配合负责此功能的功能,以便发送给正确的收件人?基本上,是否有为此定义的钩子,或者是否存在这样的插件,或者我是否必须编辑核心WooCommerce文件?如果核心文件需要编辑,有人可以指出我需要编辑哪些文件的正确方向?

1 回答

  • 1

    每封电子邮件都有一个过滤器,允许您调整该电子邮件的收件人 . 过滤器名称基本上是 woocommerce_email_recipient_{$email_id} .

    因此,以下内容将过滤“new_order”电子邮件的“到”地址 .

    add_filter( 'new_order' , 'so_26429482_add_recipient', 20, 2 );
    function so_26429482_add_recipient( $email, $order ) {
        $additional_email = "somebody@somewhere.net";
        if( $order->shipping_postcode == "90210" ){
            $email = explode( ',', $email );
            array_push( $email, $additional_email );
        }
        return $email;
    }
    

    我不是100%肯定条件逻辑,但我认为应检查发货邮政编码,然后发送到其他电子邮件地址 .

相关问题