我使用的是Woocommerce 2.4.12版,最新版本。我想对订单页面进行一些更改,这是在管理仪表板下的woocommerce -->订单。

它的文件在plugins>woocommerce文件夹的什么地方?我已经在我的主题中创建了一个woocommerce文件夹来覆盖模板文件。我想将客户的电话号码添加到ship_to列。客户希望客户的电话号码在订单页面上可见。有没有办法使用functions.php来添加钩子并进行更改?
发布于 2016-01-14 17:46:58
在你的functions.php上试试这个
add_filter( 'manage_edit-shop_order_columns', 'shop_order_columns' );
function shop_order_columns( $columns ){
$new_columns = (is_array($columns)) ? $columns : array();
$new_columns['phone'] = 'Phone';
return $new_columns;
}
add_action( 'manage_shop_order_posts_custom_column', 'shop_order_posts_custom_column' );
function shop_order_posts_custom_column( $column ){
global $post, $the_order;
if ( empty( $the_order ) || $the_order->get_id() != $post->ID ) {
$the_order = wc_get_order( $post->ID );
}
$billing_address = $the_order->get_address();
if ( $column == 'phone' ) {
echo ( isset( $billing_address['phone'] ) ? $billing_address['phone'] : '');
}
}位置问题??..
在第一个函数中尝试此方法
function shop_order_columns($columns){
$columns = (is_array($columns)) ? $columns : array();
$phone = array( 'phone' => 'Phone' );
$position = 5;
$new_columns = array_slice( $columns, 0, $position, true ) + $phone;
return array_merge( $new_columns, $columns );
}针对WooCommerce 3进行了更新。
发布于 2016-01-14 17:54:30
您应该使用manage_shop_order_posts_custom_column操作,并通过检查列名来更改列数据
switch( $column ) {
case 'shipping_address' :
echo 'sample data';
break;
}https://stackoverflow.com/questions/34785747
复制相似问题