1

我想出售一个 .doc 文件文档。当用户付款后,文档文件应该发送到他的电子邮件地址,而不是像默认情况下那样直接下载。我怎样才能做到这一点?它将是一个可下载的 doc 文件产品,将通过电子邮件发送到他们的电子邮件地址

4

1 回答 1

1

使用woocommerce_email_attachments专用挂钩,您可以将项目可下载文件附加到 WooCommerce 客户完成订单电子邮件通知,如下所示:

add_filter( 'woocommerce_email_attachments', 'attach_downloadable_files_to_customer_completed_email', 10, 3 );
function attach_downloadable_files_to_customer_completed_email( $attachments, $email_id, $order ) {
    if( isset( $email_id ) && $email_id === 'customer_completed_order' ){
        // Loop through order items
        foreach( $order->get_items() as $item ) {
            $product = $item->get_product(); // The product Object

            if ( $product->is_downloadable() && ( $downloads = $product->get_downloads() ) ) {
                // Loop through product downloads
                foreach( $downloads as $download ) {
                    $attachments[] = $download->get_file();
                }
            }
        }
    }
    return $attachments;
}

代码位于您的活动子主题(或活动主题)的 function.php 文件中。测试和工作。


要使其适用于客户处理订单通知,请替换:

if( isset( $email_id ) && $email_id === 'customer_completed_order' ){

经过:

if( isset( $email_id ) && $email_id === 'customer_processing_order' ){

相关答案:

于 2020-06-12T12:55:11.840 回答