Cara mengatur postingan siput ketika menggunakan wp_insert_post () ;?


9

Tema saya menggunakan template khusus untuk membuat beberapa konten. Untuk menggunakan templat ini, saya menghubungkan ke after_switch_thememembuat halaman saya sendiri setelah tema diaktifkan, dan kemudian menetapkan templat ini untuk itu.

Beginilah cara saya melakukannya:

$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);
    }
}

Namun, siput halaman selalu mengikuti judul. Artinya, siput itu selalu custom-page. Sepertinya wp_insert_post()tidak mendukung post slug, karena tidak ada referensi kode.

Saya perlu mengatur siput karena judul halaman adalah sesuatu yang sangat populer, dan mungkin ada halaman lain dengan siput yang sama sudah ada.

Bagaimana saya bisa melakukan ini?

Jawaban:


11

Parameter untuk memasukkan siput khusus adalah:

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

Tidak post_slugseperti yang orang pikirkan! :)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.