Woocommerce将自定义新订单电子邮件发送到自定义电子邮件地址

时间:2018-01-01 19:05:21

标签: php wordpress email customization

我得到了一个简单的问题,因为我已经研究了几个小时而没有找到合适的答案。

我想在新订单时发送新类型的电子邮件,并将其发送到自定义结帐字段中提供的电子邮件地址。

我已经实施了Woocommerce并通过插件添加了额外的结帐字段(结帐字段编辑器。 其中一个签出字段包含一个电子邮件地址(字段名称为[client_email])。

我还设法通过Woo Custom Emails插件创建了一种新型的电子邮件。

我唯一的问题是使用自定义结帐字段[client_email]的输入设置此电子邮件的收件人。

任何想法或解决方案?

非常感谢!

我找到了这个小片段:

add_filter( 'woocommerce_email_recipient_customer_processing_order', 'processing_order_replacement_email_recipient', 10, 2 );
function processing_order_replacement_email_recipient( $recipient, $order ) {
    // Set HERE your replacement recipient email(s)… (If multiple, separate them by a coma)
    $recipient = '<email adress>';
    return $recipient;
}

这是电子邮件模板文件。

<?php
/**
 * Customer processing order email
 *
 * This template can be overridden by copying it to yourtheme/woocommerce/emails/customer-processing-order.php.
 *
 * HOWEVER, on occasion WooCommerce will need to update template files and you
 * (the theme developer) will need to copy the new files to your theme to
 * maintain compatibility. We try to do this as little as possible, but it does
 * happen. When this occurs the version of the template file will be bumped and
 * the readme will list any important changes.
 *
 * @see         https://docs.woocommerce.com/document/template-structure/
 * @author      WooThemes
 * @package     WooCommerce/Templates/Emails
 * @version     2.5.0
 */

if ( ! defined( 'ABSPATH' ) ) {
    exit; // Exit if accessed directly
}

$email_heading = get_option( 'ec_woocommerce_customer_processing_order_heading' );

/**
 * @hooked WC_Emails::email_header() Output the email header
 */
do_action( 'woocommerce_email_header', $email_heading, $email ); ?>

<?php echo get_option( 'ec_woocommerce_customer_processing_order_main_text' ); ?>

<?php

/**
 * @hooked WC_Emails::order_details() Shows the order details table.
 * @hooked WC_Structured_Data::generate_order_data() Generates structured data.
 * @hooked WC_Structured_Data::output_structured_data() Outputs structured data.
 * @since 2.5.0
 */
do_action( 'woocommerce_email_order_details', $order, $sent_to_admin, $plain_text, $email );

/**
 * @hooked WC_Emails::order_meta() Shows order meta data.
 */
do_action( 'woocommerce_email_order_meta', $order, $sent_to_admin, $plain_text, $email );

/**
 * @hooked WC_Emails::customer_details() Shows customer details
 * @hooked WC_Emails::email_address() Shows email address
 */
do_action( 'woocommerce_email_customer_details', $order, $sent_to_admin, $plain_text, $email );

/**
 * @hooked WC_Emails::email_footer() Output the email footer
 */
do_action( 'woocommerce_email_footer', $email );

0 个答案:

没有答案