回答:
OK-結局、かなり単純であることが判明しました-何らかのメンタルブロックmenu_order
があったので、$post
オブジェクト内の変数です(思い出させてくれた@bradyに感謝します)。
次に、ソート可能な列値の作成に関する @scribuの投稿が残りを提供します。
したがって、カスタム投稿タイプが呼び出されると仮定するとheader_text
、これらは必要な関数とフックです:
注文に新しい列を追加します
/**
* 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');
列の値をレンダリングします
/**
* 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');
列をソート可能に設定します
/**
* 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');
長すぎますが、記録のためだけに、「supports」オプション配列に「page-attributes」を含めるだけで、adminに「menu order」オプションを表示できます。例えば:
register_post_type( 'columna',
array(
'labels' => array(
'name' => __( 'Columnas' ),
'singular_name' => __( 'Columna' ),
),
'supports' => array( 'title', 'thumbnail', 'excerpt', 'page-attributes' ),
'public' => true,
'has_archive' => false,
'menu_position'=>5
)
);
CPTを以下で登録する必要があります。
'hierachical' => true