在我的帐户订单页面中向客户显示最后一张WooCommerce备注



这是我最近的订单

我希望添加另一列";跟踪号";它将展示wooccommerce";客户须知";在…内

结果如下:在客户订单历史中显示最后一个WooCommerce管理订单备注

不同的是,无需点击查看订单,我的客户就可以知道他们的跟踪号码。

但我完全不知道这是如何工作的,因为我不熟悉php。。

希望能做到这一点并学到一些东西。谢谢

结果将

您需要首先在我的订单页面中创建一个新列

function order_note_in_column( $columns ) {
$new_columns = array();
foreach ( $columns as $key => $name ) {
$new_columns[ $key ] = $name;
// Your Column Name : Change Tracking Number with the Column Heading you Want
if ( 'order-status' === $key ) {
$new_columns['track-number'] = __( 'Tracking Number', 'textdomain' );
}
}
return $new_columns;
}
add_filter( 'woocommerce_my_account_my_orders_columns', 'order_note_in_column' );

一旦你现在创建了一个新的列,第二步就是在列中显示数据。保持内部类型以显示私人笔记,这样客户笔记就不会显示在前端上

function order_note_value_in_column( $order ) {

//Get Notes by order ID & Here keep type as internal to show private note. In this way customer notes will not be displayed at frontend  
$note =    wc_get_order_notes([
'order_id' => $order->get_id(),
'type' => 'internal',
]);
// Displaying the latest Note. If no tracking number entered then order status will be displayed in column
print_r($note[0]->content);

}
add_action( 'woocommerce_my_account_my_orders_column_track-number', 'order_note_value_in_column' );

代码进入functions.php tested&工作

最新更新