Bagaimana Cara Menghapus Custom Post Type Slug dari Permalink di WordPress?

Tidak ingin URL jenis kiriman khusus menyertakan jenis kiriman di URL? Berikut cara menghapus slug jenis posting khusus dari URL di WordPress.

Jenis posting khusus dapat ditambahkan di WordPress menggunakan fungsi register_post_type. Ketika Anda perlu memiliki jenis posting selain posting dan halaman, itu cara yang bagus untuk diterapkan. Dengan jenis posting khusus, konten Anda diatur dengan cara yang lebih baik dan Anda juga dapat menangani fungsi khusus, meta posting, dan desain dengan lebih baik.

Bagaimana jika Anda perlu mendaftarkan jenis posting khusus, tetapi tidak ingin memiliki siput ekstra di permalink jenis posting khusus?

Misalnya, jika Anda mendaftarkan jenis kiriman khusus seperti “layanan”, URL kiriman khusus Anda menyertakan “layanan” atau slug yang Anda tentukan. Ini membuat URL lebih panjang, dan mungkin tidak diperlukan.

Anda mungkin ingin URL Anda seperti example.com/web-design/ dan bukan example.com/services/web-design/

Inilah cara jenis posting khusus terdaftar di WordPress.

register_post_type( string $post_type, array|string $args = array() )

Berikut adalah parameter yang didukung dengan fungsi.

  • $post_type: (string) (Diperlukan) Kunci jenis posting (nama)
  • $args: (array|string) (Opsional) Array atau string argumen untuk mendaftarkan jenis posting.

Parameter $args adalah larik untuk kontrol granular dari jenis kiriman khusus. Anda dapat memeriksa detail argumen yang diterima di parameter $args di WordPress.org .

Di antara $args, seseorang dapat menentukan apakah jenis kiriman khusus memiliki arsip dan juga mengontrol bagaimana tautan permanen URL untuk jenis kiriman khusus dibuat.

  • ‘has_archive’ : (bool|string) Apakah harus ada arsip jenis posting, atau slug arsip yang akan digunakan. Akan menghasilkan aturan penulisan ulang yang tepat jika $rewrite diaktifkan. Salah default.
  • ‘rewrite’: (bool|array) Menangani penulisan ulang untuk jenis posting ini. Default ke true, menggunakan $post_type sebagai slug. Sebuah array dapat dilewatkan alih-alih hanya benar / salah untuk menentukan aturan penulisan ulang.

Parameter “rewrite” dari $args mendukung kunci berikut.

  • ‘slug’: (string) Struktur permalink slug. Default ke kunci $post_type.
  • ‘with_front’: (bool) Apakah struktur permalink harus diawali dengan WP_Rewrite::$front. Standarnya benar.
  • ‘feeds’: (bool) Apakah feed harus diaktifkan.
  • ‘pages’: (bool) Pagination diaktifkan atau dinonaktifkan. Standarnya benar.
  • ‘ep_mask’: (const) Masker titik akhir yang akan ditetapkan.

Parameter “slug” adalah tempat struktur permalink untuk URL jenis posting khusus ditangani.

Secara default, ini menambahkan slug posting kustom dengan kunci jenis posting kustom (nama).

Jika jenis posting khusus adalah “layanan”, URL default menyertakannya. Misalnya: example.com/services/web-design

Seseorang dapat menentukan slug apa yang akan digunakan dengan mengatur yang sama di sini.

Untuk menggunakan slug jenis posting kustom yang kami inginkan di URL, kami dapat mengubah hal yang sama ke string apa pun (alfabet, numerik, dan garis bawah) yang kami inginkan.

Tujuan kami adalah menghapus slug jenis posting khusus dari URL. Membiarkan nilai slug kosong tidak menghilangkan slug. Sebaliknya, itu membuat WordPress menggunakan default.

Anda dapat memaksa WordPress untuk menghapus slug jenis posting kustom dari struktur permalink dengan mengatur slug ke “/”. Itu saja yang perlu Anda lakukan.

Beginilah tampilan kode jenis pos kustom Anda.

// Register services custom post type
register_post_type( 'services', $args );
$args = array( 'has_archive' => true, 'rewrite' => $rewrite);
$rewrite = array('slug' => '/', 'with_front' => true);

Setelah Anda membuat perubahan pada kode jenis posting kustom Anda, Anda perlu menyimpan pengaturan tautan permanen Anda . Cukup masuk ke dasbor WordPress Anda, buka halaman Pengaturan -> Permalinks dan tekan tombol simpan. Ini akan menyimpan pengaturan permalink dan file .htaccess akan diperbarui.

Jangan lupa untuk menghapus cache website Anda untuk melihat perubahan pada website Anda.

WordPress akan dengan mudah menangani URL lama Anda dan mengarahkannya ke yang baru. Namun, ketika Anda mengubah permalink situs web Anda, Anda harus menambahkan pengalihan permanen untuk URL lama untuk SEO yang lebih baik.