使用wp_insert_post();时如何设置后?


9

我的主题使用自定义模板来呈现一些内容。要使用此模板,我需要在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);
    }
}

但是,页面的提示始终位于标题之后。这意味着,这种the总是custom-page。好像wp_insert_post()不支持子弹,因为代码参考中没有任何内容。

因为页面的标题很受欢迎,所以我需要设置一个子弹,并且可能已经存在另一个具有相同子弹的页面。

我怎样才能做到这一点?

Answers:


11

插入自定义子弹的参数为:

'post_name' => 'my-custom-slug'

不像post_slug人们想的那样!:)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.