WooCommerce是最受用戶歡迎的 WordPress 電子商務(wù)插件,原因之一就是其豐富的 API 和方便靈活的后臺管理界面,為 WooCommerce定制開發(fā)帶來了許多便利。在WooCommerce管理界面,我們可以非常方便的查看用戶所下訂單的詳細(xì)信息,包括購買商品的數(shù)量,合計(jì)金額等,比較全面,但是有一個非常重要的信息,在WooCommerce默認(rèn)是沒有顯示的,那就是所有的商品列表,這個列表是非常重要的,通過一段很簡單的代碼就能顯示出來。
下面的代碼為我們的訂單預(yù)覽頁面添加了一列特殊的信息,名稱為“購買的商品”,列表的每一行會顯示一個商品名稱和商品數(shù)量,把下面的代碼復(fù)制到主題的 functions.php 文件或插件的相關(guān)文件中即可。
add_filter( 'manage_edit-shop_order_columns', 'show_product_order',15 );
function show_product_order($columns){
//添加一列信息
$columns['product-display'] = __( '購買的商品');
return $columns;
}
添加用戶所購買的商品信息到這一列。
add_action( 'manage_shop_order_posts_custom_column' , 'snv_custom_shop_order_column', 10, 2 );
function snv_custom_shop_order_column( $column ) {
global $post, $woocommerce, $the_order;
switch ( $column ) {
case 'product-display' :
$terms = $the_order->get_items();
if ( is_array( $terms ) ) {
foreach($terms as $term)
{
echo $term['item_meta']['_qty'][0] .' x ' . $term['name'] .'';
}
} else {
_e( '獲取商品信息失敗。', 'woocommerce' );
}
break;
}
}
我們來看一下這段代碼是怎么工作的:
show_product_orderfilter 添加了一列信息到 WooCoomerce 的商品管理界面,這一列數(shù)據(jù)將顯示在其他信息列的后面。snv_custom_shop_order_columnaction 添加了功能“manage_shop_order_posts_custom_column”到WooCommerce,用來查詢用戶所購買的商品,并顯示商品名稱和數(shù)量到我們上面添加的“購買的商品”這一數(shù)據(jù)列。
除了用戶所購買的商品,我們還可以根據(jù)需要添加其他信息(比如用戶聯(lián)系方式,收獲地址等)到訂單列表界面,有 WordPress 和WooCommerce豐富的功能 API 做支撐,一切功能,只有我們想不到的,沒有實(shí)現(xiàn)不了的。



echo $term[‘item_meta’][‘_qty’][0] .’ x ‘ . $term[‘name’] .”;
上方這段要改成:
echo $term[‘name’] .’ x ‘ . $term[‘qty’];
這樣才能正確顯示數(shù)量,
同時數(shù)量也會顯示在:商品名稱 x 后方比較符合使用習(xí)慣