Для добавления пункта меню в админ-панели WordPress для создания и управления кастомными типами записей ("custom post types"), вам нужно сначала зарегистрировать новый тип записи с помощью функции `register_post_type()`. Это обычно делается в вашем теме или плагине в хуке `init`.
Код для регистрации нового типа записи может выглядеть примерно так:
```php
function my_custom_post_type() {
$args = array(
'public' => true,
'label' => 'Мои кастомные посты',
'supports' => array('title', 'editor', 'thumbnail')
// ... дополнительные параметры
);
register_post_type('my_custom_post_type', $args);
}
add_action('init', 'my_custom_post_type');
```
После того как вы зарегистрировали свой кастомный тип записи, он автоматически должен появиться в админ-панели. Однако, если вы хотите добавить его в собственное меню, созданное с помощью `add_menu_page()`, вам нужно будет использовать функцию `add_submenu_page()` и указать соответствующий `post_type` в URL.
Например, так можно добавить подменю для кастомного типа записи:
```php
function my_custom_menu_page() {
// Создание нового главного меню
add_menu_page(
'Моё специальное меню', // название страницы
'Специальное меню', // название меню
'manage_options', // capability
'my-top-level-slug', // menu_slug
'my_custom_menu_page_callback' // функция отображения содержимого страницы
);
// Добавление подменю для кастомного типа записи
add_submenu_page(
'my-top-level-slug', // parent_slug
'Добавить новый кастомный пост', // page_title
'Добавить новый', // menu_title
'manage_options', // capability
'post-new.php?post_type=my_custom_post_type' // menu_slug
);
}
add_action('admin_menu', 'my_custom_menu_page');
function my_custom_menu_page_callback(){
echo '<h1>Добро пожаловать в специальное меню</h1>';
// Содержимое вашей основной страницы меню
}
```
В приведенном примере создается новый пункт верхнего уровня в меню админ-панели, а затем к нему добавляется подменю, которое перенаправляет пользователя на страницу для добавления нового кастомного поста. Значение `menu_slug` - это URL к редактору записей для указанного типа записи.
Обратите внимание, что вам необходимо заменить `my_custom_post_type` на имя вашего кастомного типа записи. Используйте правильные значения для `capability`, чтобы контролировать доступ к этим меню в зависимости от роли пользователя в WordPress.