【问题标题】:Call custom order meta in woocommerce email在 woocommerce 电子邮件中调用自定义订单元
【发布时间】:2015-10-08 08:19:18
【问题描述】:

我在 woocommerce 的结帐中有自定义字段,我希望这些字段出现在电子邮件模板中。

我正在添加以下内容,但仍未显示:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post();

            $mycustom = get_post_meta( $order->id, 'wccf_delivery_day', true );
            echo $mycustom;?>
            <?php endwhile; ?>

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    你可以使用woocommerce_email_order_meta_keys过滤钩子

    add_filter('woocommerce_email_order_meta_keys', 'my_woocommerce_email_order_meta_keys');
    
    function my_woocommerce_email_order_meta_keys( $keys ) {
    
        $keys['Delivery Day'] = '_wccf_delivery_day';
    
        return $keys;
    
    } 
    

    如果您需要对显示进行更多控制,请尝试使用 woocommerce_email_after_order_table 操作挂钩

    add_action( "woocommerce_email_after_order_table", "custom_woocommerce_email_after_order_table", 10, 1);
    
    function custom_woocommerce_email_after_order_table( $order ) {
    
        echo '<p><strong>Delivery Day :</strong>'. get_post_meta( $order->id, "_wccf_delivery_day", true ) .'</p>';
    
    }
    

    【讨论】:

    • 嘿,我找了几个星期来解决这个问题 - 你在哪里找到这个代码?它是否记录在我忽略的某个地方?
    • 这似乎适用于处理订单电子邮件,但不适用于订单完成电子邮件?
    猜你喜欢
    • 2016-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-09
    • 2017-04-18
    相关资源
    最近更新 更多