在客户订单历史记录中显示最后的WooCommerce管理员订单记录 [英] Display last WooCommerce admin order note in customers order history

查看:50
本文介绍了在客户订单历史记录中显示最后的WooCommerce管理员订单记录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望在客户的订单历史记录中显示 last 订单注释,该订单注释当前仅可通过Woocommerce中的Admin查看.

I am looking to display the last Order Note, currently only viewable via Admin in Woocommerce, on the customer side in their Order History.

因此他们可以查看我们在订单设置为完成后 中添加的跟踪号.

So they can view the tracking number we add in after the order is set as complete.

https://example.com/my-account/view-order/135/

我们首先通过Woocommerce API将订单设置为COMPLETE,然后添加带有跟踪链接的订单来添加客户注释.因此,跟踪参考将始终是最后一项.

We add a customer note by first setting the order as COMPLETE via the Woocommerce API then adding an order note with the tracking link. So the tracking ref will always be the last item.

如何在客户订单历史记录上显示最后一个订单注释?似乎没有插件可以在客户方显示订单注释.

How can I show the last Order Note on the customer order history? No plugins seem to exist for Order Notes to be shown on the customer side.

理想结果:

推荐答案

以下内容将在我的帐户查看订单页面上显示最后一个管理订单备注:

The following will display last admin order note to my account view orders pages:

add_filter( 'woocommerce_get_order_item_totals', 'account_view_order_last_order_note', 10, 3 );
function account_view_order_last_order_note( $total_rows, $order, $tax_display ){
    // For "completed" orders on my account view order pages
    if( $order->has_status('completed')  && is_wc_endpoint_url( 'view-order' ) ){

        // Get last order note
        $latest_notes = wc_get_order_notes( array(
            'order_id' => $order->get_id(),
            'limit'    => 1,
            'orderby'  => 'date_created_gmt',
        ) );

        $latest_note = current( $latest_notes );

        if ( isset( $latest_note->content ) ) {
            // Add a new row for tracking
            $total_rows['order_tracking'] = array(
                'label' => __('Tracking:','woocommerce'),
                'value' => $latest_note->content
            );
        }
    }

    return $total_rows;
}

代码进入您的活动子主题(或活动主题)的function.php文件中.经过测试,可以正常工作.

Code goes in function.php file of your active child theme (or active theme). Tested and works.

这篇关于在客户订单历史记录中显示最后的WooCommerce管理员订单记录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆