Шаблон вывода таксономии
Здравствуйте!
Не могу разобраться вот с такой штукой...
На сайте создан произвольный тип записей book,
Так же прописаны таксономии zhanry, avtory и т.д.
Шаблон для архива записей: /book/, archive-book.php - Работает
Шаблон для вывода записей: /avtory/avtor-1/, taxonomy-avtory.php - Работает
Но не могу подключить шаблон для страницы вида /avtory/ или /zhanry/
Всё расно переходит либо на index.php, либо на home.php
Пробовал создать статическую страницу со слагом zhanry и указать шаблон - тоже ничего не выходит.
Через фильтр так же шаблон присваивается только к /zhanry/zhanr-1/
// фильтр передает переменную $template - путь до файла шаблона. // Изменяя этот путь мы изменяем файл шаблона. add_filter('template_include', 'my_template'); function my_template( $template ) { # шаблон для страниц для выводо таксономий "Календари" if ( is_tax( 'zhanry' ) ) { return get_stylesheet_directory() . '/category-zhanry.php'; } return $template; }
Ребята... Как присвоить шаблон к странице /zhanry/??? Уже неделю мучаюсь...
Вот таксономия:
/* Регистрация произвольного типа записи book */ add_action('init', 'my_custom_init'); function my_custom_init(){ register_post_type('book', array( 'labels' => array( 'name' => 'Книги', // Основное название типа записи 'singular_name' => 'Книгу', // отдельное название записи типа Book 'add_new' => 'Добавить', 'add_new_item' => 'Добавить новую книгу', 'edit_item' => 'Редактировать книгу', 'new_item' => 'Новая книга', 'view_item' => 'Посмотреть книгу', 'search_items' => 'Найти книгу', 'not_found' => 'Книг не найдено', 'not_found_in_trash' => 'В корзине книг не найдено', 'parent_item_colon' => '', 'menu_name' => 'Книги' ), 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite' => true, 'capability_type' => 'post', 'has_archive' => 'book', 'hierarchical' => true, 'menu_position' => 2, 'menu_icon' => 'dashicons-book-alt', 'supports' => array('title','editor','author','thumbnail','excerpt','comments'), 'taxonomies' => 'zhanry', ) ); } /* Регистрация произвольных таксономий */ add_action( 'init', 'mayak_taxonomy_register' ); function mayak_taxonomy_register(){ $labels = array( 'name' => 'Жанры', 'singular_name' => 'Жанр', 'menu_name' => 'Жанры' , 'all_items' => 'Все жанры', 'edit_item' => 'Редактировать жанр', 'view_item' => 'Посмотреть жанр', 'update_item' => 'Сохранить жанр', 'add_new_item' => 'Добавить жанр', 'parent_item' => 'Родительскаий жанр', 'search_items' => 'Поиск по жанрам', 'back_to_items' => 'Назад на страницу жанров', 'most_used' => 'Популярные жанры', //get_taxonomy_labels() ); $args = array( 'labels' => $labels, 'show_admin_column' => true, 'hierarchical' => true, ); register_taxonomy('zhanry', array('book'), $args); $labels = array( 'name' => 'Авторы', 'singular_name' => 'Автор', 'menu_name' => 'Авторы' , 'all_items' => 'Все авторы', 'edit_item' => 'Редактировать автора', 'view_item' => 'Посмотреть автора', 'update_item' => 'Сохранить автора', 'add_new_item' => 'Добавить автора', 'parent_item' => 'Родительская категория', 'search_items' => 'Поиск по авторам', 'back_to_items' => 'Назад на страницу авторов', 'most_used' => 'Популярные авторы', //get_taxonomy_labels() ); $args = array( 'labels' => $labels, 'show_admin_column' => true, 'hierarchical' => true, ); register_taxonomy('avtory', array('book'), $args);
Зачем get_stylesheet_directory()?
Если нужно путь к каталогу с темой то get_template_directory_uri().
Вопрос "Но не могу подключить шаблон для страницы вида /avtory/ или /zhanry/" - непонятен.
Если я правильно понял, то ответ тут https://wp-kama.ru/function/wp_query#taxonomies.
Можно вывести нужные посты через WP_Query и сделать пагинацию.