@ratyk

Почему не отображаются рубрики в пользовательских записях?

Не отображаются рубрики в пользовательской таксономии. Вот код:
add_action( 'init', 'register_catalog_post_type' );
function register_catalog_post_type() {
	// Раздел вопроса - faqcat
	register_taxonomy('catalogs', array('catalog'), array(
		'label'                 => '', // определяется параметром $labels->name
		'labels'                => array(
			'name'              => 'Разделы каталога',
			'singular_name'     => 'Раздел каталога',
			'search_items'      => 'Искать раздел каталога',
			'all_items'         => 'Все',
			'parent_item'       => 'Родит. раздел',
			'parent_item_colon' => 'Родит. раздел:',
			'edit_item'         => 'Ред. раздел ',
			'update_item'       => 'Обновить раздел ',
			'add_new_item'      => 'Добавить раздел ',
			'new_item_name'     => 'Новый раздел',
			'menu_name'         => 'Раздел каталога',
		),
		'show_admin_column' 	=> true,
		'description'           => 'Рубрики для раздела каталога', // описание таксономии
		'public'                => true,
		'show_in_nav_menus'     => true, // равен аргументу public
		'show_ui'               => true, // равен аргументу public
		'show_tagcloud'         => false,
		'hierarchical'          => true,
		'rewrite'               => array('slug'=>'catalog', 'hierarchical'=>false, 'with_front'=>false, 'feed'=>false ),// Позволить или нет авто-создание колонки таксономии в таблице ассоциированного типа записи. (с версии 3.5)
		
	) );

	// тип записи - вопросы - faq
	register_post_type('catalog', array(
		'label'               => 'Каталог',
		'labels'              => array(
			'name'          => 'Каталог',
			'singular_name' => 'Каталог',
			'menu_name'     => 'Каталог',
			'all_items'     => 'Все разделы',
			'add_new'       => 'Добавить раздел',
			'add_new_item'  => 'Добавить новый раздел',
			'edit'          => 'Редактировать',
			'edit_item'     => 'Редактировать раздел',
			'new_item'      => 'Новый раздел',
		),
		'description'         => '',
		'public'              => true,
		'publicly_queryable'  => true,
		'show_ui'             => true,
		'show_in_rest'        => false,
		'rest_base'           => '',
		'show_in_menu'        => true,
		'exclude_from_search' => false,
		'menu_position'       => 4,
		'capability_type'     => 'post',
		'map_meta_cap'        => true,
		'hierarchical'        => false,
		'rewrite'             => array( 'slug'=>'catalog/%catalogs%', 'with_front'=>false, 'pages'=>false, 'feeds'=>false, 'feed'=>false ),
		'has_archive'         => 'catalog',
		'query_var'           => true,
		'supports'            => array('title','editor','thumbnail'),
		'taxonomies'          => array('catalogs'),
	) );

}
  • Вопрос задан
  • 104 просмотра
Решения вопроса 2
deniscopro
@deniscopro Куратор тега WordPress
WordPress-разработчик, denisco.pro
По мне, самым простым способом, чтобы не копаться — взять плагин Custom Post Type UI. Создать аналогичный тип записей и таксономию и соединить их галочкой в админке.
Если потребуется, можно сделать экспорт PHP-кода, а сам плагин удалить.
Ответ написан
Комментировать
@ratyk Автор вопроса
В общем использовал плагин Custom Post Type UI, посмотрел каких элементов мне не хватает, в общем надо было добавить строку:
'show_in_rest'=> true,
Весь код:
register_taxonomy('catalogs', array('catalog'), array(
		'label'                 => '', // определяется параметром $labels->name
		'labels'                => array(
			'name'              => 'Разделы каталога',
			'singular_name'     => 'Раздел каталога',
			'search_items'      => 'Искать раздел каталога',
			'all_items'         => 'Все',
			'parent_item'       => 'Родит. раздел',
			'parent_item_colon' => 'Родит. раздел:',
			'edit_item'         => 'Ред. раздел ',
			'update_item'       => 'Обновить раздел ',
			'add_new_item'      => 'Добавить раздел ',
			'new_item_name'     => 'Новый раздел',
			'menu_name'         => 'Раздел каталога',
		),
		'description'           => 'Рубрики для раздела каталога', // описание таксономии
		'public'                => true,
		'publicly_queryable'	=> true,
		'show_in_nav_menus'     => true, // равен аргументу public
		'show_ui'               => true, // равен аргументу public
		'show_in_menu'			=> true,
		'query_var'				=> true,
		'show_tagcloud'         => true,
		'show_in_rest'			=> true,
		'hierarchical'          => true,
		'show_admin_column' 	=> false,
		'rewrite'               => array('slug'=>'catalog', 'hierarchical'=>false, 'with_front'=>false, 'feed'=>false ),// Позволить или нет авто-создание колонки таксономии в таблице ассоциированного типа записи. (с версии 3.5)
		'object_types'			=> 'catalog',
	) );
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы