我正在尝试在用于订单的页面上的某些位置回显优惠券代码(如果已使用的话)。
我正在使用以下代码:
if(function_exists('print_coupon_name')){
global $woocommerce;
$order = new WC_Order($order_id);
$coupons = $order->get_used_coupons();
echo "Coupon: " . $coupons;
}
我得到这个结果:
Coupon: Array
我需要从数组中提取某些数据吗?上面的这段代码是真的从实际订单中获取优惠券数据,还是我需要以某种方式预选订单?我在做什么错了?
答案 0 :(得分:1)
该函数返回一个空数组或一个优惠券名称数组(如果存在)。 您需要检查返回的数组是否不为空并对其进行循环。
if(function_exists('print_coupon_name')){
global $woocommerce;
$order = new WC_Order($order_id);
$coupons = $order->get_used_coupons();
if ( ! empty( $coupons ) ) {
foreach ( $coupons as $coupon ) {
echo "Coupon: " . $coupon;
}
}
}