WooCommerce 是最受用户欢迎的 WordPress 电子商务插件,受欢迎的主要原因是因为丰富的 API 和方便灵活的后台管理界面,为 WooCommerce 定制开发带来了许多便利。在 WooCommerce 管理界面,我们可以非常方便的查看用户所下订单的详细信息,包括购买商品的数量,合计金额等,比较全面,但是有一个非常: w f r S R D重要的信息,在 WooCommerce 默认是没有显示的,那就是所有的商品列表,这个列表是非常重要的,通过一段很简单的代A ? [ : , Z码就能显示出6 : v L来。
下面的代码为我们的订单预8 A N ` ( 2 N览页面添加了一列特殊的信息,名称为“购买的商品”,列表的每一行会显示一个商品名称和b 2 U Q o S G @商品数量,把下面的代码W L V复制到主题的 functions.php 文件或插件的相关文件中即可。
- add_filter( 'manage_edit-shop_order_columns', 'show_product_order',15 );
- function show_pro! } b z } +duct_order($columns){
- //添加一列信息
- $columns['product-displB 7 t R @ ; Q 7ay'] = __( '购买的商品');
- return $columns;
- F P c e5;
添加用户所购买的商品V 4 / [ ^ j V信息到这一列。
- a4 - W Odd_actir / z J 6 * q C (on( 'manage_shop_order_posts_custom_column' , 'snv_custom_shop_order_column', 10, 2 );
- function snv_custom_shop_order_column( $column ) {
- global $post, $woo% . | ` J Acommerce, $the_order;
- switch ( $column ) {: k \ V ) c
- case 'product-display' :
- $terms = $the_order->get_items();
- if ( is_array( $terms ) ) {
- foreac4 q Q U p U Sh&Y 8 ( P B :#40;$terms as $G R ? - C e % y rterm)
- {
- echo $term['item_mN P s V U f keta']['_qty'] ? 9 g m X ~1;0] .' x ' . $term['name'] .'';
- }
- } eA * F B ! ^ alse {
- _e( '获取商品信息失败。', 'woocommerce' 3 n X41;;
- }
- break;
- }
- }
我们来看一下这段代码是怎么工作的:
-
show_product_order
filter 添加了一列信息到 WooCoomerc) k R / ; B Ce 的商品管理界面,这一列数据将显示在其| / % k Y Y ; @ #他信息列的后面。 -
snv_custom_shop_order_column
action 添加了功能“manage_shoW Q ] } d r ? Bp_order_posts_custom_column
”到 Wou H @ ` ( ^oCommerce,用来查询用户所购买的商品,并显示商[ ~ D K k k t 2品名称和数量到我们上( 2 9 b u E [面添加的“购买的商品”这一数据列。
除了用户所购买的商品,我们j r V [ | ] + F还可以根据需要添加其他信息@ e x(比如用户联系方式,收获地址等)到订单列表界面,有c 0 X P O e WordPress 和 WooCommerce 丰富的功能 API 做支撑,一切功能,只有我们想不到的,没有实现不了的。