Cara mengatur jenis posting khusus agar tidak muncul di ujung depan

9

Saya menggunakan jenis posting khusus di salah satu situs saya untuk tayangan slide gambar. Saya telah meminta secara publik setel ke false / off tetapi ketika Google merayapi situs saya, saya melihat 404 kesalahan untuk URL untuk tayangan slide saya. Saya berpikir bahwa dengan meminta secara terbuka dari Wordpress tidak akan membuat URL ujung depan itu.

Bagaimana saya bisa sepenuhnya mematikan URL ujung depan dan halaman untuk jenis posting kustom saya?

EDIT

Dengan menambahkan public => false, has_archive => false, publicaly_queryable => false, dan query_var => falsesaya telah berhasil mendapatkan menyingkirkan 404 kesalahan dalam Google. Saya juga menambahkan fungsi yang disediakan oleh @Norcross hanya untuk ukuran yang baik.

dkmojo
sumber
Apa URL kamu?
s_ha_dum
bagaimana Anda mengedit tipe posting khusus dengan pengaturan itu? Public false berarti saya tidak dapat mengeditnya di admin
Laurence Cope
1
Untuk mengedit di admin sepertinya Anda perlu publik => benar, maka Anda memiliki kesalahan ketik untuk membuatnya tidak terlihat di ujung depan, itu harus dapat dilihat secara publik
Laurence Cope
!!!! Perhatian !!! Ada kesalahan ketik yang seharusnya 'publicly_queryable' bukan '
publicaly_queryable

Jawaban:

6

Pilihan lain adalah menetapkan 301 redirect untuk semua CPT tayangan slide untuk mengarahkan ulang di suatu tempat (seperti halaman rumah). Ini akan diambil oleh Google, dan juga memastikan tidak ada yang secara tidak sengaja mendapatkannya

function rkv_slideshow_redirect() {
    global $wp_query;

    // redirect from 'slideshow' CPT to home page
    if ( is_archive('CPT_NAME_HERE') || is_singular('CPT_NAME_HERE') ) :
        $url   = get_bloginfo('url');

        wp_redirect( esc_url_raw( $url ), 301 );
        exit();
    endif;
}

add_action ( 'template_redirect', 'rkv_slideshow_redirect', 1);
Norcross
sumber
Terima kasih! Semua kesalahan tampilan slide 404 saya di Google sekarang hilang. Saya menambahkan public => false, has_archive => false dan publicly_queryable => false dan mereka tidak lagi muncul sebagai 404 kesalahan. Saya memang menambahkan kode yang Anda berikan ke file functions.php saya "berjaga-jaga". Terima kasih lagi!
dkmojo
2

Rupanya tayangan slide Anda , bukan WordPress, itu mengungkapkan URL tersebut. Saya menganggap itu membungkus gambar dalam tayangan slide dengan tautan ke pos kustom, yang tidak Anda inginkan. Anda perlu mengedit rangkai salindia agar tidak melakukannya.

s_ha_dum
sumber
Rangkai salindia menggunakan wp_get_attachment_image_src untuk menarik gambar dalam satu lingkaran sehingga tidak ada tautan ke tipe pos khusus salindia. Saya baru saja mengatur parameter "publik" dalam metode tipe posting register kustom saya ke false. Saya akan melihat apakah itu membantu. Terima kasih atas masukan Anda!
dkmojo
1

Sebuah modifikasi untuk pertanyaan awal Anda, Anda harus menambahkan

'exclude_from_search' => true,

Jika ini tidak ditambahkan, CPT akan muncul di hasil pencarian.

JoseLazo
sumber
developer.wordpress.org/reference/functions/register_post_type : exclude_from_search(bool) Apakah mengecualikan posting dengan jenis posting ini dari hasil pencarian ujung depan. Default adalah nilai kebalikan dari $ public.
Erenor Paz