从WooCommerce订单中获取二手优惠券代码和相关折扣金额

SemFim Creative

我需要在自定义插件中插入代码,以获取在设置中输入的折扣代码的名称,通过代码获得的折扣以及总计。

基于从WooCommerce订单答案代码中获取优惠券数据,我插入了以下代码:

$order = wc_get_order( $order_id );

// GET THE ORDER COUPON ITEMS
$order_items = $order->get_items('coupon');

// print_r($order_items); // For testing

// LOOP THROUGH ORDER COUPON ITEMS
foreach( $order_items as $item_id => $item ){

    // Retrieving the coupon ID reference
    $coupon_post_obj = get_page_by_title( $item->get_name(), OBJECT, 'shop_coupon' );
    $coupon_id = $coupon_post_obj->ID;

    // Get an instance of WC_Coupon object (necessary to use WC_Coupon methods)
    $coupon = new WC_Coupon($coupon_id);

    ## Filtering with your coupon custom types
    if( $coupon->is_type( 'fixed' ) || $coupon->is_type( 'percent' ) || $coupon->is_type( 'fixed_product' ) ){

        // Get the Coupon discount amounts in the order
        $order_discount_amount = wc_get_order_item_meta( $item_id, 'discount_amount', true );
        $order_discount_tax_amount = wc_get_order_item_meta( $item_id, 'discount_amount_tax', true );

        ## Or get the coupon amount object
        $coupons_amount = $coupons->get_amount();
    }

}       
$confirmation = str_ireplace("{order_items}", $order_items, $confirmation);

但是,当我执行回声时,它带给我的唯一信息是“数组”一词。

我究竟做错了什么?有什么帮助吗?

LoicTheAztec

请尝试以下操作,这将添加以逗号分隔的应用优惠券代码字符串以及其各自的折扣金额:

$order  = wc_get_order( $order_id ); // If needed
$output = array(); // Initializing

// loop through order items "coupon"
foreach( $order->get_items('coupon') as $item_id => $item ){
    // Get the coupon array data in an unprotected array
    $data = $item->get_data();
    
    // Format desired coupon data for output
    $output[] = $data['code'] . ': ' . strip_tags( wc_price( $data['discount'] + $data['discount_tax'] ) );
}

$confirmation = str_ireplace("{order_items}", implode(', ', $output), $confirmation);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从WooCommerce订单中获取二手优惠券代码和相关折扣金额

来自分类Dev

成功获取Magento订单ID,订单价值和优惠券代码

来自分类Dev

每个订单项的WooCommerce优惠券代码

来自分类Dev

WooCommerce中的“订单满$ 100免费获得产品X”的优惠券代码

来自分类Dev

如何在 Woocommerce 中更新优惠券代码对象

来自分类Dev

Shopify在订单中添加优惠券

来自分类Dev

WooCommerce自定义优惠券折扣

来自分类Dev

PayPal REST API-优惠券/折扣代码(负数)

来自分类Dev

如果在Woocommerce中未应用优惠券,则自动对用户角色应用折扣

来自分类Dev

Magento将优惠券代码添加到发票折扣中

来自分类Dev

如何在WooCommerce中对“优惠券金额”列进行排序

来自分类Dev

从WooCommerce获取优惠券描述以订购已应用的优惠券

来自分类Dev

使用优惠券简码形式检查优惠券是否在WooCommerce中应用

来自分类Dev

检查woocommerce是否应用了任何优惠券代码

来自分类Dev

替换为“成功应用优惠券代码”。WooCommerce中的消息

来自分类Dev

在 WooCommerce 中应用特定优惠券代码时发送电子邮件通知

来自分类Dev

在WooCommerce感谢页面中显示优惠券使用次数和限制

来自分类Dev

在WooCommerce中应用优惠券后如何舍入价格?

来自分类Dev

禁用WooCommerce中订阅产品的优惠券

来自分类Dev

基于产品类别的WooCommerce特定优惠券折扣

来自分类Dev

创建帐户后,在 woocommerce 中为首次订单创建优惠券,有效期为 2 周

来自分类Dev

如何根据woocommerce订单中使用的优惠券更改订单状态

来自分类Dev

限制为一张应用的优惠券,删除 Woocommerce 中其他以前应用的优惠券

来自分类Dev

正在应用Magento优惠券代码,但总金额未减少

来自分类Dev

从Paypal表格中减去优惠券(折扣)价格(如果可能)

来自分类Dev

显示优惠券说明woocommerce

来自分类Dev

通过 URL 添加 WooCommerce 优惠券

来自分类Dev

一次添加的优惠券折扣在完成订单后不会刷新一次

来自分类Dev

在WooCommerce管理订单列表上显示使用的优惠券

Related 相关文章

  1. 1

    从WooCommerce订单中获取二手优惠券代码和相关折扣金额

  2. 2

    成功获取Magento订单ID,订单价值和优惠券代码

  3. 3

    每个订单项的WooCommerce优惠券代码

  4. 4

    WooCommerce中的“订单满$ 100免费获得产品X”的优惠券代码

  5. 5

    如何在 Woocommerce 中更新优惠券代码对象

  6. 6

    Shopify在订单中添加优惠券

  7. 7

    WooCommerce自定义优惠券折扣

  8. 8

    PayPal REST API-优惠券/折扣代码(负数)

  9. 9

    如果在Woocommerce中未应用优惠券,则自动对用户角色应用折扣

  10. 10

    Magento将优惠券代码添加到发票折扣中

  11. 11

    如何在WooCommerce中对“优惠券金额”列进行排序

  12. 12

    从WooCommerce获取优惠券描述以订购已应用的优惠券

  13. 13

    使用优惠券简码形式检查优惠券是否在WooCommerce中应用

  14. 14

    检查woocommerce是否应用了任何优惠券代码

  15. 15

    替换为“成功应用优惠券代码”。WooCommerce中的消息

  16. 16

    在 WooCommerce 中应用特定优惠券代码时发送电子邮件通知

  17. 17

    在WooCommerce感谢页面中显示优惠券使用次数和限制

  18. 18

    在WooCommerce中应用优惠券后如何舍入价格?

  19. 19

    禁用WooCommerce中订阅产品的优惠券

  20. 20

    基于产品类别的WooCommerce特定优惠券折扣

  21. 21

    创建帐户后,在 woocommerce 中为首次订单创建优惠券,有效期为 2 周

  22. 22

    如何根据woocommerce订单中使用的优惠券更改订单状态

  23. 23

    限制为一张应用的优惠券,删除 Woocommerce 中其他以前应用的优惠券

  24. 24

    正在应用Magento优惠券代码,但总金额未减少

  25. 25

    从Paypal表格中减去优惠券(折扣)价格(如果可能)

  26. 26

    显示优惠券说明woocommerce

  27. 27

    通过 URL 添加 WooCommerce 优惠券

  28. 28

    一次添加的优惠券折扣在完成订单后不会刷新一次

  29. 29

    在WooCommerce管理订单列表上显示使用的优惠券

热门标签

归档