В своем register_post_typeзвонке убедитесь, что у вас есть следующие аргументы:
register_post_type(
'my_post_type',
array(
'hierarchical' => true,
'public' => true,
'rewrite' => array(
'slug' => 'my_post_type',
'with_front' => false,
),
'supports' => array(
'page-attributes' /* This will show the post parent field */,
'title',
'editor',
'something-else',
),
// Other arguments
)
);
Убедитесь, что ваши постоянные ссылки очищены (просто перейдите на страницу Настройки> Постоянные ссылки).
Теперь, когда вы создаете новый my_post_type, просто установите его родительский для другого, и его постоянная ссылка будет выглядеть примерно так:
http://example.com/parent-post-type/my-post-type/
Вы можете пройти столько уровней, сколько вам нужно.