在WooCommerce的后台订单列表页面添加一个订单中的商品列表

文 / @UTHEME

关于WooCommerce管理界面的商品列表

我是一个热爱网站开发、WordPress技术和WooCommerce电商的小本本,今天想和大家分享一下如何在WooCommerce管理界面中添加用户所购买商品列表。

如何添加用户所购买商品列表

WooCommerce是最受用户欢迎的WordPress电子商务插件,受欢迎的主要原因是因为丰富的API和方便灵活的后台管理界面,为WooCommerce定制开发带来了许多便利。在WooCommerce管理界面,我们可以非常方便的查看用户所下订单的详细信息,包括购买商品的数量,合计金额等,比较全面,但是有一个非常重要的信息,在WooCommerce默认是没有显示的,那就是所有的商品列表,这个列表是非常重要的,通过一段很简单的代码就能显示出来。

下面的代码为我们的订单预览页面添加了一列特殊的信息,名称为“购买的商品”,列表的每一行会显示一个商品名称和商品数量,把下面的代码复制到主题的functions.php文件或插件的相关文件中即可。

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的商品管理界面,这一列数据将显示在其他信息列的后面。
  • snv_custom_shop_order_columnaction添加了功能“manage_shop_order_posts_custom_column”到WooCommerce,用来查询用户所购买的商品,并显示商品名称和数量到我们上面添加的“购买的商品”这一数据列。

除了用户所购买的商品,我们还可以根据需要添加其他信息(比如用户联系方式,收获地址等)到订单列表界面,有WordPress和WooCommerce丰富的功能API做支撑,一切功能,只有我们想不到的,没有实现不了的。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。