2016-01-14 26 views
7

Tôi đang sử dụng phiên bản Woocommerce 2.4.12, phiên bản mới nhất. Tôi muốn thực hiện một số thay đổi đối với trang đơn hàng nằm trong bảng điều khiển quản trị trong woocommerce -> đơn đặt hàng. Woocommerce Orders PageLàm cách nào để chỉnh sửa trang đơn đặt hàng quản trị woocommerce?

Tệp ở đâu trong plugin-> thư mục woocommerce? Tôi đã tạo một thư mục woocommerce trong chủ đề của mình để ghi đè lên các tệp mẫu. Tôi muốn thêm số điện thoại của khách hàng vào cột ship_to. Khách hàng muốn Số điện thoại của khách hàng hiển thị trên trang đơn đặt hàng. Bất kỳ cách nào để sử dụng functions.php để thêm một cái móc và thay đổi?

+0

mẫu file là tôi tin rằng chỉ cho email và các trang frontend. Bạn đang cố gắng làm gì? – Reigel

+0

bạn có muốn cập nhật trang đặt hàng của bảng điều khiển quản trị không? Chủ đề-> thư mục thương mại điện tử được sử dụng để ghi đè lên tệp cho các trang giao diện người dùng không dành cho back-end. –

+0

@Reigel Ya Tôi cũng nghĩ như vậy. Tôi muốn thêm số điện thoại của khách hàng vào cột ship_to. Khách hàng muốn Số điện thoại của khách hàng hiển thị trên trang đơn đặt hàng. –

Trả lời

14

thử này cho vấn đề Chức vụ 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'] : ''); 
    } 
} 

của bạn ?? ..

thử này cho hàm đầu tiên

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); 
} 

Cập nhật cho WooCommerce 3.

+0

Trả lời đúng (y) –

+0

Hoạt động hoàn hảo. Chỉ cần sao chép mã. Cảm ơn nhiều! @Reigel –

+1

Chính xác, đây không phải là một câu hỏi cụ thể về WooCommerce và có thể được giải quyết bằng các bộ lọc lõi của WordPress. – helgatheviking

2

Bạn nên sử dụng manage_shop_order_posts_custom_column hành động và thay đổi dữ liệu cột bằng cách kiểm tra tên cột

switch($column) { 

     case 'shipping_address' : 
      echo 'sample data'; 
      break; 

    } 
Các vấn đề liên quan