я имею Custmom Post Type и есть перезаписать слаг, он работает отлично, пока я не установил для иерархии значение true.
Hierarchical прекрасно работает в wp-admin, но когда я перешел во внешний интерфейс, добавленный элемент CPT переходит на страницу 404.
пожалуйста, обратите внимание что flush_rewrite_rules () интегрирован, а также я много раз пытался повторно передать постоянную ссылку в настройках, используя WordPress 4.3.1.
$arg = [
'public' => true,
'show_ui' => true,
'_builtin' => false,
'_edit_link' => 'post.php?post=%d',
'capability_type' => 'post',
'hierarchical' => false,
'rewrite' => ['slug' => 'book', 'page-attributes'],
'query_var' => 'book',
'supports' => ['title', 'editor', 'thumbnail'],
'menu_position' => 5,
'menu_icon'=> 'dashicons-testimonial'
];
и когда я установил 'hierarchical' => true,
это идет в 404 странице.
Похоже, вы положили page-attributes
в неправильном массиве. Это относится к опорам, а не переписывать! В приведенном ниже массиве я переместил его в нужное место. Надеюсь, это поможет.
$arg = [
'public' => true,
'show_ui' => true,
'_builtin' => false,
'_edit_link' => 'post.php?post=%d',
'capability_type' => 'post',
'hierarchical' => true,
'rewrite' => ['slug' => 'book'],
'query_var' => 'book',
'supports' => ['title', 'editor', 'thumbnail', 'page-attributes'],
'menu_position' => 5,
'menu_icon'=> 'dashicons-testimonial'
];
Других решений пока нет …