WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Рекомендуемые продукты со скидкой от Template Monster

Нет таксономии для поста

Добавил таксономию в файл functions.php
Вот код:

add_action( 'init', 'create_taxonomy' );
function create_taxonomy(){
	register_taxonomy('skills', array('portfolio'), array(
		'label'                 => '', // определяется параметром $labels->name
		'labels'                => array(
			'name'              => 'Навыки',
			'singular_name'     => 'Навык',
			'search_items'      => 'Найти навык',
			'all_items'         => 'Все навыки',
			'view_item '        => 'Смотреть навык',
			'parent_item'       => 'Родительский навык',
			'parent_item_colon' => 'Родительский навык:',
			'edit_item'         => 'Изменить навык',
			'update_item'       => 'Обновить навык',
			'add_new_item'      => 'Добавить новый навык',
			'new_item_name'     => 'Новое имя навыка',
			'menu_name'         => 'Навыки',
		),
		'description'           => 'Навыки, которые использовались в работе над проектом', // описание таксономии
		'public'                => true,
		'publicly_queryable'    => null, // равен аргументу public
		'hierarchical'          => false,
		'rewrite'               => true,
	) );
}

Эта таксономия привязывается к постам с Портфолио. Вот код регистрации постов с портфолио:

add_action( 'init', 'register_post_types' );
function register_post_types(){
	register_post_type('portfolio', array(
		'label'  => null,
		'labels' => array(
			'name'               => 'Портфолио', 
			'singular_name'      => 'Портфолио', 
			'add_new'            => 'Добавить работу', 
			'add_new_item'       => 'Добавление работы', 
			'edit_item'          => 'Редактирование работы', 
			'new_item'           => 'Новая работа', 
			'view_item'          => 'Смотреть работу',
			'search_items'       => 'Искать работу в портфолио',
			'not_found'          => 'Не найдено', 
			'not_found_in_trash' => 'Не найдено в корзине', 
			'parent_item_colon'  => '',
			'menu_name'          => 'Портфолио',
		),
		'description'         => 'Наши работы в портфолио',
		'public'              => true,
		'publicly_queryable'  => true, // зависит от public
		'exclude_from_search' => false, // зависит от public
		'show_ui'             => true, // зависит от public
		'show_in_menu'        => true, // показывать ли в меню адмнки
		'show_in_admin_bar'   => true, // по умолчанию значение show_in_menu
		'show_in_nav_menus'   => true, // зависит от public
		'show_in_rest'        => true, // добавить в REST API. C WP 4.7
		'rest_base'           => null, // $post_type. C WP 4.7
		'menu_position'       => 4,
		'menu_icon'           => 'dashicons-format-gallery', 
		//'capability_type'   => 'post',
		//'capabilities'      => 'post', 
		//'map_meta_cap'      => null,
		'hierarchical'        => false,
		'supports'            => array('title', 'editor', 'author', 'thumbnail'), // 'title','editor','author','thumbnail','excerpt','trackbacks','custom-fields','comments','revisions','page-attributes','post-formats'
		'taxonomies'          => array('skills'),
		'has_archive'         => false,
		'rewrite'             => true,
		'query_var'           => false,
	) );
}

Проблема в чём. Значит, таксономия регистрируется, но почему-то привесить к посту с портфолио возможности нет. Хотя должна быть. По крайней мере в видео по которому я это делаю, всё получается. У меня почему-то нет. Подскажите, пожалуйста, в чём может быть дело. Спасибо.

0
pavliggs
2 месяца назад 2
  • 1
    Glum600

    так как ваша кастомный тип поста использует гутенберг, то нужно добавить в register_taxonomy() параметр ‘show_in_rest’ => true, потому что гутенберг извлекает таксономии используя REST API

    pavliggs 2 мес назад

    Спасибо, помогло. У меня ещё вопрос

    'supports'            => array('title', 'editor', 'author', 'thumbnail'),

    Почему-то при создании поста добавились все настройки, кроме author. Заранее благодарен за ответ.

    Glum 2 мес назад

    поле автор не отображается если у вас только один пользователь с подходящей ролью, создайте еще одного пользователя с ролью автор и тогда оно появится в настройках поста

    pavliggs 2 мес назад

    Понял.
    Вы круче Била Гейтса!

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация