我有一个显示已用优惠券的代码:
add_action( 'woocommerce_email_after_order_table', 'add_payment_method_to_admin_new_order', 15, 2 );
function add_payment_method_to_admin_new_order( $order, $is_admin_email ) {
if( $order->get_used_coupons() ) {
$coupons_count = count( $order->get_used_coupons() );
$i = 1;
$coupons_list = '';
foreach( $order->get_used_coupons() as $coupon) {
$coupons_list .= $coupon;
if( $i < $coupons_count )
$coupons_list .= ', ';
$i++;
}
echo '<p></p>';
echo '<p><strong>Купон:</strong> ' . $coupons_list . '</p>';
} // endif get_used_coupons
}
以及在WooCommerce表行中显示信息的代码:
add_filter( 'woocommerce_get_order_item_totals', 'bbloomer_add_recurring_row_email', 10, 2 );
function bbloomer_add_recurring_row_email( $total_rows, $myorder_obj ) {
$total_rows['recurr_not'] = array(
'label' => __( 'Купон:', 'woocommerce' ),
'value' => 'blabla'
);
return $total_rows;
}
如何将已使用的优惠券转移到值字段?像这样的'value'=>'used_coupon'
答案 0 :(得分:1)
由于您有权访问$order
,因此可以用相同的方式应用
function add_payment_method_to_admin_new_order( $order, $sent_to_admin, $plain_text, $email ) {
if( $order->get_used_coupons() ) {
$coupons_count = count( $order->get_used_coupons() );
$i = 1;
$coupons_list = '';
foreach( $order->get_used_coupons() as $coupon) {
$coupons_list .= $coupon;
if( $i < $coupons_count )
$coupons_list .= ', ';
$i++;
}
echo '<p></p>';
echo '<p><strong>Купон:</strong> ' . $coupons_list . '</p>';
} // endif get_used_coupons
}
add_action( 'woocommerce_email_after_order_table', 'add_payment_method_to_admin_new_order', 10, 4 );
function bbloomer_add_recurring_row_email( $total_rows, $order, $tax_display ) {
if( $order->get_used_coupons() ) {
$coupons_count = count( $order->get_used_coupons() );
$i = 1;
$coupons_list = '';
foreach( $order->get_used_coupons() as $coupon) {
$coupons_list .= $coupon;
if( $i < $coupons_count ) {
$coupons_list .= ', ';
$i++;
}
}
$total_rows['recurr_not'] = array(
'label' => __( 'Купон:', 'woocommerce' ),
'value' => $coupons_list,
);
}
return $total_rows;
}
add_filter( 'woocommerce_get_order_item_totals', 'bbloomer_add_recurring_row_email', 10, 3 );