Wordpress Custom_post slug и чпу

Есть такая проблема, которую решить не могу уже пару дней. Все поиски сводятся к одному и тому же…

Вопрос следующий: Есть необходимость создать новый тип записей для удобства наполнения структуры сайта, это чревато тем, что в урл добавляется custom_post_slug от которого я хочу избавиться.

Необходимо сохранить структуру чпу на сайте следующего вида:
site.com/category/post_name
site.com/category/category_child/post_name

из-за нового типа записей, как ни крути, выходит только так: site.com/custom_post_slug/post_name

Что я делал:
Большинство рекомендаций не решают задачу, например заменить slug на '/' - просто уберет из урл.

На сайте wp-kama.ru есть рекомендация при создании нового типа register_post_type() указать для rewrite => slug со значением %category% (регистрировать его не надо, так как он создан по умолчанию)…

https://wp-kama.ru/function/register_post_type#rewrite
slug(строка)
Префикс в ЧПУ (/префикс/ярлык_записи). Используйте array( 'slug' => $slug ), чтобы создать другой префикс. В этом параметре можно указывать плейсхолдеры типа %category%. Но их нужно создать с помощью add_rewrite_tag() и научить WP их понимать.

…но после этого все посты нового типа записей получают 404, и как быть дальше — я не понимаю.


Ответы (1 шт):

Автор решения: Vladimir Belogorodskiy

Решил не вмешиваться в логику работы WP и оставить custom_slug но заменил слово на одну букву, например:

site.com**/a/category/category_child/**post_name

→ Ссылка