Лучшие решения
появляются в процессе

Добавление столбца в таблицу на экране редактирования таксономии WordPress

 

Чтобы добавить столбец, например в категории постов, нужно воспользоваться фильтром manage_edit-{название таксономии}_columns:

 

function my_custom_taxonomy_columns( $columns )
{
 $columns['my_term_id'] = 'ID категории';

 return $columns;
}
add_filter('manage_edit-category_columns' , 'my_custom_taxonomy_columns');

 

Этот код добавит столбец в конец таблицы. Вот код для добавления столбца в начало таблицы:

 

function my_custom_taxonomy_columns( $columns )
{
    $new_columns = array();
    if ( isset( $columns['cb'] ) ) {
        $new_columns['cb'] = $columns['cb'];
        unset( $columns['cb'] );
    }
    $new_columns['my_term_id'] = 'Название столбца';

    return array_merge( $new_columns, $columns );
}
add_filter('manage_edit-category_columns' , 'my_custom_taxonomy_columns');

 

Для добавления данных в строку таблицы воспользуемся фильтром manage_{название таксономии}_custom_column:

 

function my_custom_taxonomy_columns_content( $content, $column_name, $term_id )
{
 if ( 'my_term_id' == $column_name ) {
 $content = $term_id;
 }
 return $content;
}
add_filter( 'manage_category_custom_column', 'my_custom_taxonomy_columns_content', 10, 3 );

 

Добавим сортировку по возрастанию, или убыванию:

 

function register_my_custom_taxonomy_sortable( $newcolumn ) {
    $newcolumn['my_term_id'] = 'my_term_id';
    return $newcolumn;
}
add_filter( 'manage_edit-category_sortable_columns', 'register_my_custom_taxonomy_sortable' );

add_action( 'pre_get_terms', 'my_custom_taxonomy_orderby' );
function my_custom_taxonomy_orderby( $query ) {
    if( ! is_admin() )
        return;
    
    $orderby = $_GET['orderby'];
   
    if( 'my_term_id' == $orderby ) {
        $query->query_vars['orderby'] = 'id';

    }

}

Хорошая статья? Оцените!
(Пока оценок нет)
Загрузка...


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *