Страница категорий произвольного типа записей

7 февр. 2013 г., 22:56:53
Просмотры: 23.5K
Голосов: 2

Не получается корректно настроить работу страницы архива или категорий.

Я следую инструкциям из http://codex.wordpress.org/Template_Hierarchy#Category_display

но всё равно происходит переход к archive.php (думаю, согласно схеме), хотя я назвал файл category-business.php

вот мой код:

/******************
//  Бизнес
******************/

function my_custom_post_business() {
  $labels = array(
        'name'               => _x( 'бизнес', 'общее название типа записи' ),
        'singular_name'      => _x( 'бизнес', 'единственное число названия типа записи' ),
        'add_new'            => _x( 'Добавить новый', 'запись' ),
        'add_new_item'       => __( 'Добавить новый бизнес' ),
        'edit_item'          => __( 'Редактировать бизнес' ),
        'new_item'           => __( 'Новый бизнес' ),
        'all_items'          => __( 'Все бизнесы' ),
        'view_item'          => __( 'Просмотреть бизнес' ),
        'search_items'       => __( 'Искать бизнес' ),
        'not_found'          => __( 'Бизнесы не найдены' ),
        'not_found_in_trash' => __( 'В корзине бизнесы не найдены' ), 
        'parent_item_colon'  => '',
        'menu_name'          => 'бизнес'
    );
    $args = array(
        'labels'        => $labels,
        'description'   => 'Содержит наши бизнесы и специфичные для бизнеса данные',
        'public'        => true,
        'hierarchical'      => true,
        'show_ui'           => true,
        'show_in_nav_menus' => true,
        'menu_position' => 5,
        'supports'      => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments' ),
        'has_archive'   => true,

        //'taxonomies' => array('category'),
    );
    register_post_type( 'business', $args );

}
add_action( 'init', 'my_custom_post_business' );

/** добавляем категории для произвольного типа записей */
add_action( 'init', 'build_taxonomies', 0 );
function build_taxonomies() {
    register_taxonomy( 'mycategories', 'business', array( 'hierarchical' => true, 'label' => 'Категории бизнеса', 'query_var' => true, 'rewrite' => true ) );
}
2
Комментарии

Привет, пожалуйста, вставьте весь соответствующий код в сам Вопрос, вы можете [редактировать] его по мере необходимости.

brasofilo brasofilo
7 февр. 2013 г. 23:19:29

сделано. спасибо, что обратили на это внимание.

Lukasz Lukasz
8 февр. 2013 г. 18:08:27
Все ответы на вопрос 2
1

Поскольку вы используете пользовательскую таксономию, а не стандартные категории записей, вам необходимо назвать ваш файл taxonomy-{taxonomy}.php, и в вашем случае это будет taxonomy-mycategories.php.

Ознакомьтесь с разделом иерархии шаблонов для отображения архивов пользовательских таксономий.

7 февр. 2013 г. 23:19:47
Комментарии

После создания файла taxonomy-{taxonomy}.php не забудьте перейти в раздел постоянных ссылок и нажать "сохранить"

Alexander Ivashchenko Alexander Ivashchenko
30 авг. 2018 г. 23:00:18
0

Быстрое дополнение для тех, кто, как и я, оказался здесь при попытке создать пользовательские архивы таксономий.

Если у вас УЖЕ созданы таксономии, а затем вы изменяете код CPT, чтобы разрешить архивирование, вам необходимо удалить эти таксономии и очистить кеш. Новые таксономии будут работать, но по какой-то причине старые вызывают ошибку 404 (даже после сброса постоянных ссылок!).

Надеюсь, это поможет!

13 июл. 2020 г. 13:23:23