@caof19

Как сделать term и каталог по одному урлу?

Здравствуйте, возникла проблема с вп. Есть сайт с товарами (не woocomerce), у них есть категории, и они должны быть (и доступны) по урлу mysite.ru/producia. Там выводится список категорий товаров. Переходя на категорию товаров, которая доступна по mysite.ru/producia/name_cat выводятся все товары из данной категории. Переходя на товар, он должен иметь урл mysite.ru/producia/name_of_product. Так вот проблема в следующем, сейчас post_type для продукции прописан так:
register_post_type('products', array(
		'labels' => array(
			'name'               => __('Продукция', 'carnon'),
		),
		'public' => true,
		'capability_type' => 'page',
		'hierarchical' => true,
		'menu_icon' => 'dashicons-book',
		'menu_position' => 5,
		'rewrite' => array( 'slug' => 'producia', 'with_front' => false ),
		'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt' ),
		'show_in_rest' => true,
	));

А для таксономии "категории" так:
register_taxonomy( 'category', [ 'products' ], [ 
		'label'                 => 'Категории', 
		'labels'                => [
			'name'              => 'Категории',
		],
		'description'           => '', 
		'public'                => true,
		'hierarchical'          => true,
		'capabilities'          => array(),
		'meta_box_cb'           => null, 
		'show_admin_column'     => false, 
		'show_in_rest'          => true,
		'rest_base'             => null,
'rewrite' => array( 'slug' => 'producia', 'with_front' => false ),
	] );

Проблема в следующем: если оставить все так, то то список категорий и список товаров категории доступны по нужному урлу, но товар отдает 404 (страницу постоянный ссылки обновлял). Если из объявлении таксономии убрать "rewrite", то список категорий и товар доступны по нужному урлу, но тогда страница со списком товаров из категории доступна по адресу mysite.ru/category/name_cat (оно в общем то логично). Вопрос, можно ли как то реализовать мою задумку?
  • Вопрос задан
  • 17 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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