Flector

Как добавить колонку «Шаблон» при выводе списка страниц?

Колонка Шаблон в списке страниц

Очень многие современные темы для WordPress в полной мере используют механизм шаблонов для страниц сайта. Например, с помощью шаблонов страниц создатели тем предлагают пользователям выбрать вид главной страницы сайта. К сожалению, по умолчанию движок никак не показывает установленный для страницы шаблон, а поэтому приходиться заходить на страницу редактирования, чтобы выяснить эту информацию. Если страниц на сайте много, то это может быть непростой задачей. Добавить колонку "Шаблон" при просмотре списка страниц довольно легко, для этого вам необходимо вставить в файл functions.php вашей темы следующий код:

//колонка "Шаблон" в списке страниц админки start
function wph_columns_names_layout($defaults) {
    $defaults['page-layout'] = __('Template');
    return $defaults;
}
function wph_add_column_layout($column_name, $id) {
    if($column_name === 'page-layout') {
        $set_template = get_post_meta(get_the_ID(), '_wp_page_template', true);
        if ($set_template == 'default') {
            echo 'Default';
        }
        $templates = get_page_templates();
        ksort($templates);
        foreach (array_keys($templates) as $template) :
            if ($set_template == $templates[$template]) echo $template;
        endforeach;
    }
}
add_filter('manage_pages_columns', 'wph_columns_names_layout', 5);
add_action('manage_pages_custom_column', 'wph_add_column_layout', 5, 2);
 
function wph_css_for_column_layout() {
echo '<style>
  .column-page-layout {
    width: 8%;
  } 
 </style>';
}
add_action('admin_head', 'wph_css_for_column_layout');
//колонка "Шаблон" в списке страниц админки end

Данный сниппет реально экономит время, если вы активно используете шаблоны страниц, так как визуально помнить, какой странице какой шаблон вы назначили довольно сложно, особенно спустя какое-то продолжительное время.


Комментарии (1 комментарий)
  1. Спасибо!

Написать комментарий

Для вставки кода воспользуйтесь кнопкой "Код". Используйте предпросмотр!