OK - cuối cùng hóa ra khá đơn giản - vì tôi đã có một loại khối tinh thần - menu_order
là một biến trong $post
đối tượng (cảm ơn @brady vì đã nhắc nhở tôi về điều đó).
@ scribu's post về việc tạo các giá trị cột có thể sắp xếp sau đó cung cấp phần còn lại.
Vì vậy, giả sử loại bài đăng tùy chỉnh được gọi header_text
, đây là các hàm và móc cần thiết:
Thêm một cột mới cho đơn đặt hàng
/**
* add order column to admin listing screen for header text
*/
function add_new_header_text_column($header_text_columns) {
$header_text_columns['menu_order'] = "Order";
return $header_text_columns;
}
add_action('manage_edit-header_text_columns', 'add_new_header_text_column');
Kết xuất các giá trị cột
/**
* show custom order column values
*/
function show_order_column($name){
global $post;
switch ($name) {
case 'menu_order':
$order = $post->menu_order;
echo $order;
break;
default:
break;
}
}
add_action('manage_header_text_posts_custom_column','show_order_column');
Đặt cột thành có thể sắp xếp
/**
* make column sortable
*/
function order_column_register_sortable($columns){
$columns['menu_order'] = 'menu_order';
return $columns;
}
add_filter('manage_edit-header_text_sortable_columns','order_column_register_sortable');