在客户订单历史记录中显示最后一个WooCommerce管理订单备注

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在客户订单历史记录中显示最后一个WooCommerce管理订单备注相关的知识,希望对你有一定的参考价值。

我希望在订单历史记录的客户端显示最后的订单备注,目前只能通过Woocommerce的管理员查看。

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

Tracking

Customer Order History

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

我们首先通过Woocommerce API将订单设置为COMPLETE,然后添加带有跟踪链接的订单备注,以添加客户备注。所以跟踪引用始终是最后一项。

如何显示客户订单历史记录的最后订单注释?似乎没有插件可以在客户端显示订单备注。

理想的结果:

Ideal

答案

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

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文件中。经过测试和工作。

以上是关于在客户订单历史记录中显示最后一个WooCommerce管理订单备注的主要内容,如果未能解决你的问题,请参考以下文章

在 React 中获取 Rocketchat 历史记录

订单历史通知

MySQL表历史记录和快照的最佳方式[关闭]。

从表中检索最后 N 条记录

如何在具有子句的聚合函数旁边选择相应的记录

history.phtml 上 Magento 中的自定义状态