Как установить post slug при использовании wp_insert_post () ;?

В моей теме используется настраиваемый шаблон для отображения некоторого содержимого. Чтобы использовать этот шаблон, я подключаюсь к after_switch_theme для создания моей собственной страницы после активации темы, а затем присваиваю ей этот шаблон.

Вот как я это делаю:

 $new_page_title = __('Custom page'); $new_page_content = ''; $new_page_template = 'page-custom.php'; $page_check = get_page_by_title($new_page_title); $new_page = array( 'post_type' => 'page', 'post_title' => $new_page_title, 'post_content' => $new_page_content, 'post_status' => 'publish', 'post_author' => 1, 'post_slug' => 'my-custom-slug' ); if( !isset($page_check->ID) ){ $new_page_id = wp_insert_post($new_page); if(!empty($new_page_template)){ update_post_meta($new_page_id, '_wp_page_template', $new_page_template); } } 

Тем не менее, slug страницы всегда следует за заголовком. Это означает, что slug всегда является custom-page . Похоже, wp_insert_post() не поддерживает post slug, поскольку в ссылке на код нет.

Мне нужно установить слизень, так как заголовок страницы является чем-то очень популярным, и может быть другая страница с тем же самым слипом уже существующим.

Как я могу это сделать?