Что я предпочитаю делать, если я создаю тип записи в плагине или в коде, так это также добавить этот код, который позволяет вам установить порядок по умолчанию для внешнего и внутреннего интерфейса, а также установить переменную GET в admin так что администратор WordPress распознает изменение и поместит стрелку вверх, если вы сортируете по названию, дате или чему-либо еще, что вы показываете в таблице администратора.
add_filter( 'pre_get_posts' , 'my_cpt_order' ); // Runs before the posts are fetched
function my_cpt_order( $query ) {
// Check query and alter only the query needed
//echo '<PRE>'; print_r($query); echo '</PRE>';
if ($query->query['post_type'] == 'cpt' && !isset($query->query['orderby'])) {
$query->set( 'orderby' , 'title' );
$query->set( 'order' , 'asc' );
//get the arrow to show up over title in admin
if (is_admin()) {
$_GET['orderby'] = 'title';
$_GET['order'] = 'asc';
}
} //if
} //my_cpt_order
Так как menu_order является значением по умолчанию, это не нужно, если вы сортируете пользовательский тип поста по menu_order, но если это тип поста, где вы не хотите, чтобы пользователь беспокоился о сортировке, и вы хотите использовать что-то вроде заголовка это очень удобно.