![](/img/trans.png)
[英]How to show product name in a new column in WooCommerce "My account" orders table
[英]Show products name and quantity in a new column on Woocommerce My account Orders
在 Woocommerce 中,我想在我的帳戶訂單列表中添加一個新列,並顯示訂購產品的名稱和數量。
例如,我有此代碼添加了一個顯示訂單名稱的新列:
function sv_wc_add_my_account_orders_column( $columns ) {
$new_columns = array();
foreach ( $columns as $key => $name ) {
$new_columns[ $key ] = $name;
if ( 'order-status' === $key ) {
$new_columns['order-ship-to'] = __( 'Ship to', 'textdomain' );
}
}
return $new_columns;
}
add_filter( 'woocommerce_my_account_my_orders_columns', 'sv_wc_add_my_account_orders_column' );
function sv_wc_my_orders_ship_to_column( $order ) {
$formatted_shipping = $order->get_name;
echo ! empty( $formatted_shipping ) ? $formatted_shipping : '–';
}
add_action( 'woocommerce_my_account_my_orders_column_order-ship-to', 'sv_wc_my_orders_ship_to_column' );
如何更改它以顯示訂購產品的名稱和數量?
以下代碼將向我的帳戶訂單列表部分添加一個自定義列,顯示每個訂單的產品名稱和數量:
add_filter( 'woocommerce_my_account_my_orders_columns', 'additional_my_account_orders_column', 10, 1 );
function additional_my_account_orders_column( $columns ) {
$new_columns = [];
foreach ( $columns as $key => $name ) {
$new_columns[ $key ] = $name;
if ( 'order-status' === $key ) {
$new_columns['order-items'] = __( 'Product | qty', 'woocommerce' );
}
}
return $new_columns;
}
add_action( 'woocommerce_my_account_my_orders_column_order-items', 'additional_my_account_orders_column_content', 10, 1 );
function additional_my_account_orders_column_content( $order ) {
$details = array();
foreach( $order->get_items() as $item )
$details[] = $item->get_name() . ' × ' . $item->get_quantity();
echo count( $details ) > 0 ? implode( '<br>', $details ) : '–';
}
代碼位於活動子主題(或活動主題)的 function.php 文件中。 測試和工作。
我看到了,這很有趣。 除了“我的訂閱”列外,我需要相同的內容。 它僅為客戶提供訂閱產品的ID,而不提供訂閱產品的真實名稱。
我發現這與上面的代碼相似,但是我做不到。 WooCommerce中的訂閱基本上是您購買的產品,以后需要續訂。 但是它會創建順序外的訂閱,而這是客戶在“我的訂閱”列中看到的訂閱ID。
你能幫我嗎? 永遠感激...
Ë
太好了,這是需要的功能! 謝謝。 我還想在訂閱表中添加有關訂閱的信息,主要是關於訂閱變體名稱的信息。 我該怎么做?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.