@Vic87

Не подключается нужный файл архива, в чем может быть проблема?

Я создаю кастомную таксу (zaystatus) и юзертайп (zay):

add_action( 'plugins_loaded', 'plv_reg_taxonomy_and_usertype', 10, 0 );
function plv_reg_taxonomy_and_usertype() {

        // регистрируем новые таксономии
        add_action( 'init', 'plv_create_custom_taxonomies', 20 );
        function plv_create_custom_taxonomies(){

            register_taxonomy('zaystatus', array('zay'), array(
                'hierarchical'  => true,  
                'label'			=> 'Статус Заявки',
                'labels'        => array(
                    'name'              => 'Статус Заявки',
                    'singular_name'     => 'Статус Заявки',
                    'search_items'      => 'Поиск Статуса Заявки',
                    'all_items'         => 'Все Статусы Заявки',
                    'edit_item'         => 'Редактировать Статус Заявки',
                    'update_item'       => 'Обновить Статус Заявки',
                    'add_new_item'      => 'Добавить Статус Заявки',
                    'new_item_name'     => 'Новый Статус Заявки',
                    'menu_name'         => 'Статус Заявки',
                ),
                'public' => true,
                'show_ui'       => true,
                'show_admin_column' => true,
                'show_in_menu' => true,
                'show_in_nav_menus' => true,
                'publicly_queryable' => true,
                'show_in_rest' => true, 
            ));
        }
       
        //регистрируем пользовательские типы записей ()
        add_action('init', 'plv_create_new_user_type' , 25);
        function plv_create_new_user_type(){

            $args = array(
                'taxonomies' => array('zaystatus'),
                'hierarchical' => false,
                'public' => true,
                'show_in_menu' => true,
                'show_ui' => true,
                'show_in_rest' => true,
                'supports' => array('title', 'custom-fields'),
                'menu_position' => 4,
                'label' => 'Заявки',
                'labels' => array(
                                'name' => 'Заявки',
                                'singular_name' => 'Заявка',
                                'add_new' => 'Добавить новый заявку',
                                'new_item' => 'Новый Заявка',
                                'view_item' => 'Посмотреть Заявку',
                                'all_items' => 'Все заявки',
                                ),
                'menu_icon' => 'dashicons-calendar-alt',
                'show_in_nav_menus' => false,
                'publicly_queryable' => true,
                //'has_archive' => true,
                //'rewrite' => false,
            );

            register_post_type ('zay', $args );
        }
}


Также в дополнению к стандартному файлу в теме archive.php создаю файл archive-zay.php
Если я правильно помню, для архивов пользовательсикх типов записей согласно правилам иерархии шаблонов должен подключаться файл archive-zay.php. Но он, сцуко, не подключается:-((( Один раз как-то случайно подключился, но я не отловил момент. Теперь весь день кручу-верчу комбинации параметров has_archive и rewrite но так и не могу заставить архив загружать на шаблоне archive-zay.php.

Костыльное решение я, конечно, могу придумать. Но я хочу ПОНЯТЬ, чтобы в следующий раз головой в стену не биться. Что я делаю не так? Почему архив упорно не хочет целять файл archive-zay.php, а цепляет archive.php? При этом не важно какое значение я ставлю для has_archive. Хоть true, хоть false, хоть вообще его не пишу - результат один и тот же:-((

Кто-нибудь знает ответ? Помогите, плз, разобраться!
  • Вопрос задан
  • 38 просмотров
Пригласить эксперта
Ответы на вопрос 1
artzolin
@artzolin Куратор тега WordPress
php, WordPress разработка сайтов artzolin.ru
Нужно вернуть 'has_archive' => true и пересохранить постоянные ссылки
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы