Оптимизация админки WordPress
Сегодня в статье «Оптимизация WordPress админки» расскажу, как скрывать столбец комментариев в записях. Думаю что это полезно, так как обычно когда приходит новый комментарий мы просто переходим в раздел комментариев и подтверждаем его, или удаляем. Для удаления столбца комментариев из админки в списке записей необходимо вставить специальный код в файл functions.php вашей темы.
1 2 3 4 5 |
function remove_post_columns($defaults) { unset($defaults['comments']); return $defaults; } add_filter('manage_posts_columns', 'remove_post_columns'); |
Если этот фильтр вам будет мешать, то его всегда можно отключить, удалив код из файла functions.php.
Сам по себе напрашивается вопрос, как управлять колонками в списке страниц? Для этого можно использовать еще одну функцию:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<?php function my_custom_pages_columns($columns) { /** Add a Thumbnail Column **/ $myCustomColumns = array( 'thumbnail' => __('Thumbnail', 'Aternus') ); $columns = array_merge( $columns, $myCustomColumns ); /** Remove a Author, Comments Columns **/ unset( $columns['author'], $columns['comments'] ); return $columns; } add_filter('manage_pages_columns', 'my_custom_pages_columns'); ?> |
Как вы можете видеть из представленного выше кода $myCustomColumns …, мы добавляем колонку с картинкой, закрепленной за записью. Кроме всего в функции представлен код удаления колонки автора и комментариев.
Вот таким нехитрым действием можно управлять отображением колонок в записях и страницах сайта на WordPress.
Бывает так, что для работы необходимо создать собственный тип и там тоже настроить отображение колонок как это делали в примере выше. Если вы создали новый тип данных, то можно использовать следующий код для изменения отображения колонок:
Код работы с колонками разных типов:
1 |
manage_edit-${post_type}_columns |
Предположим, у вас есть пользовательский тип записи ‘книга‘, и вы хотите добавить колонки издатель и автор книги на странице редактирования, но удалить автора публикации. Рассмотрим пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
add_filter( 'manage_edit-book_columns', 'set_custom_edit_book_columns' ); add_action( 'manage_book_posts_custom_column' , 'custom_book_column', 10, 2 ); function set_custom_edit_book_columns($columns) { unset( $columns['author'] ); $columns['book_author'] = __( 'Author', 'your_text_domain' ); $columns['publisher'] = __( 'Publisher', 'your_text_domain' ); return $columns; } function custom_book_column( $column, $post_id ) { switch ( $column ) { case 'book_author' : $terms = get_the_term_list( $post_id , 'book_author' , '' , ',' , '' ); if ( is_string( $terms ) ) echo $terms; else _e( 'Unable to get author(s)', 'your_text_domain' ); break; case 'publisher' : echo get_post_meta( $post_id , 'publisher' , true ); break; } } |
Этот пример я нашел на официальном сайте разработчиков WordPress, в CODEX.
Думаю на эту тему там еще много интересного материала. Я думаю, ваше внимание привлек, а дальше, если интересна эта тема, читайте в кодексе. Удачи в разработке удобных сайтов и оптимизации админки WordPress.

/*

- Базовый курс по веб-дизайну;
- Верстка сайтов;
- Общий курс по CMS WordPress и продолжение курса по разработке шаблонов;
- Разработка сайтов на PHP.