Cara Membuat Custom Post Types di WordPress

Seringkali orang keliru mengelompokkan WordPress hanya sebagai platform blogging. Selama beberapa tahun terakhir, WordPress telah berkembang menjadi sistem manajemen konten yang hebat. Secara default WordPress hadir dengan tulisan dan halaman sebagai jenis konten utama. Namun Anda dapat membuat sebanyak mungkin jenis konten khusus yang Anda inginkan, dan jenis konten khusus ini disebut sebagai Custom Post Types . Pada artikel ini, kami akan menunjukkan cara membuat custom post types di WordPress. Kami juga akan menunjukkan cara menggunakannya seperti pro.

Apa itu Custom Post Type di WordPress?

Jenis pos khusus adalah jenis konten seperti pos dan halaman. Sejak WordPress berevolusi dari platform blogging sederhana menjadi CMS yang tangguh, istilah postingan menempel padanya. Namun, jenis posting bisa berupa konten apa pun. Secara default, WordPress dilengkapi dengan jenis posting ini:

  • Pos
  • Halaman
  • Lampiran
  • Revisi
  • Menu Nav

Anda dapat membuat jenis posting kustom Anda sendiri dan memanggil mereka apa pun yang Anda inginkan. Misalnya jika Anda menjalankan situs ulasan film, Anda mungkin ingin membuat jenis ulasan ulasan. Jenis pos ini dapat memiliki bidang khusus yang berbeda dan bahkan struktur kategori khusus sendiri. Contoh lain dari jenis posting adalah: Portofolio, Testimonial, Produk, dll.

Kapan saya memerlukan custom post type?

Lihat artikel kami tentang kapan Anda benar-benar membutuhkan jenis pos atau taksonomi khusus di WordPress.

situs

Anda juga akan melihat bahwa kami menggunakan taksonomi khusus untuk mereka, bukan kategori atau tag.

Membuat Custom Post Type – Cara Mudah

Cara termudah untuk membuat custom post type di WordPress adalah dengan menggunakan plugin. Cara ini direkomendasikan untuk pemula karena aman dan super mudah.

Hal pertama yang perlu Anda lakukan adalah menginstal dan mengaktifkan plugin Custom Post Type UI. Setelah aktivasi, plugin akan menambahkan item menu baru di menu admin WordPress Anda yang disebut UI CPT .

Sekarang pergi ke CPT UI »Tambahkan yang baru untuk membuat custom post type baru.

Plugin Custom Post UI Add New Page

Plugin Custom Post Type UI juga memungkinkan Anda membuat taksonomi khusus.

Inilah sebabnya mengapa halaman jenis Custom post baru dibagi menjadi dua kolom. Di sebelah kiri Anda, Anda memiliki formulir yang perlu Anda isi untuk membuat jenis posting kustom Anda. Di sebelah kanan Anda, Anda memiliki formulir untuk membuat taksonomi khusus jika Anda memerlukannya.

Di kolom jenis kolom khusus, pertama Anda perlu memberi nama untuk jenis pos khusus Anda. Nama ini tidak boleh melebihi lebih dari 20 karakter, mis. film, resep, kesepakatan, glosarium, dll.

Menambahkan jenis posting kustom baru Anda

Di kolom berikutnya, Anda perlu memberi label untuk jenis pos khusus Anda. Label ini akan muncul di bilah admin WordPress Anda seperti halnya tulisan dan halaman. Perlu juga jamak untuk masuk akal. misalnya Film, Resep, Penawaran, Glosarium, dll.

Setelah itu Anda perlu memberikan bentuk tunggal untuk label Anda. Bentuk tunggal ini akan digunakan oleh WordPress untuk menunjukkan petunjuk dan elemen antarmuka pengguna lainnya.

Terakhir masukkan deskripsi untuk jenis posting kustom Anda. Deskripsi ini hanya digunakan untuk menjelaskan apa jenis posting Anda.

Sekarang Anda bisa mengklik tombol ‘Create Custom Post Type’ untuk menambahkan jenis posting kustom baru Anda. Itu saja.

Anda juga dapat mengklik link Opsi Label Lanjutan dan Tautan Lanjutan untuk menyesuaikan lebih banyak pilihan untuk jenis posting kustom Anda.

Membuat Custom Post Type secara manual

Masalah dengan menggunakan plugin adalah bahwa jenis posting kustom Anda akan hilang saat plugin dinonaktifkan. Data apa pun yang ada di jenis pos khusus akan tetap ada di sana, namun jenis pos ubahsuaian Anda tidak terdaftar dan tidak dapat diakses dari area admin.

Jika Anda bekerja di situs klien dan tidak ingin memasang plugin lain, Anda dapat membuat jenis posting kustom Anda secara manual dengan menambahkan kode yang diperlukan pada file functions.php tema Anda atau di plugin khusus situs (lihat: Postingan Khusus Jenis Debate functions.php atau Plugin).

Pertama, kami akan menunjukkan contoh kerja yang cepat dan lengkap sehingga Anda bisa mengerti cara kerjanya. Lihatlah kode ini:

// Fungsi jenis pos khusus kami
 fungsi create_posttype () {

 register_post_type ('film',
 // Opsi CPT
 array (
 'label' => array
 'nama' => __ ('Film'),
 'singular_name' => __ ('Film')
 ),
 'publik' => benar,
 'has_archive' => benar,
 'rewrite' => array ('slug' => 'movies'),
 )
 );
 }
 // Mengaitkan fungsi kita ke pengaturan tema
 add_action ('init', 'create_posttype'); 

Apa kode ini adalah bahwa ia mencatat jenis posting 'film' dengan serangkaian argumen. Argumen ini adalah pilihan dari jenis posting khusus kami. Array ini memiliki dua bagian, bagian pertama adalah label, yang merupakan array. Bagian kedua berisi argumen lain seperti visibilitas publik, memiliki arsip, dan slug yang akan digunakan di URL untuk jenis posting ini.

Sekarang mari kita lihat potongan kode rinci yang menambahkan lebih banyak pilihan pada jenis posting kustom Anda.

/ *
 * Membuat fungsi untuk membuat CPT kita
 * /

 fungsi custom_post_type () {

 // Tetapkan label UI untuk Custom Post Type
 $ labels = array (
 'name' => _x ('Movies', 'Post Type General Name', 'twentytheeneen'),
 'singular_name' => _x ('Film', 'Nama Singular Tipe Pos', 'twentytheeneen'),
 'menu_name' => __ ('Movies', 'twentytheeneen'),
 'parent_item_colon' => __ ('Film Orang Tua', 'twentytheeneen'),
 'all_items' => __ ('Semua Film', 'twentytheeneen'),
 'view_item' => __ ('Lihat Film', 'twentythirteen'),
 'add_new_item' => __ ('Add New Movie', 'twentytheeneen'),
 'add_new' => __ ('Add New', 'twentytheeneen'),
 'edit_item' => __ ('Edit Movie', 'twentythirteen'),
 'update_item' => __ ('Update Movie', 'twentytheeneen'),
 'search_items' => __ ('Search Movie', 'twentythirteen'),
 'not_found' => __ ('Tidak Ditemukan', 'twentytheeneen'),
 'not_found_in_trash' => __ ('Tidak ditemukan di Sampah', 'twentytheeneen'),
 );

 // Tetapkan pilihan lain untuk Custom Post Type

 $ args = array (
 'label' => __ ('film', 'dua belas tiga belas'),
 'deskripsi' => __ ('Berita dan ulasan film', 'twentytheeneen'),
 'label' => $ label,
 // Fitur CPT ini mendukung di Post Editor
 'support' => array ('title', 'editor', 'excerpt', 'author', 'thumbnail', 'comments', 'revisi', 'custom-fields',),
 // Anda dapat mengaitkan CPT ini dengan taksonomi atau taksonomi khusus.
 'taksonomi' => array ('genre'),
 / * CPT hierarkis seperti Pages dan bisa dimiliki
 * Item orang tua dan anak.  CPT non-hierarkis
 * seperti Posts
 * /
 'hierarkis' => salah,
 'publik' => benar,
 'show_ui' => benar,
 'show_in_menu' => benar,
 'show_in_nav_menus' => benar,
 'show_in_admin_bar' => benar,
 'menu_position' => 5,
 'can_export' => benar,
 'has_archive' => benar,
 'exclude_from_search' => salah,
 'public_queryable' => benar,
 'capabilities_type' => 'page',
 );

 // Mendaftarkan Custom Post Type Anda
 register_post_type ('film', $ args);

 }

 / * Hook ke dalam 'init' action sehingga fungsinya
 * Mengandung registrasi tipe post kami tidak
 * tidak perlu dieksekusi
 * /

 add_action ('init', 'custom_post_type', 0); 

Seperti yang Anda lihat, kami telah menambahkan lebih banyak pilihan pada jenis posting khusus dengan kodenya. Ini akan menambahkan lebih banyak fitur seperti dukungan untuk revisi, gambar unggulan, bidang kustom, dll.

Kami juga menghubungkan jenis pos khusus ini dengan taksonomi khusus yang disebut genre. Perhatikan juga bagian di mana kita telah menetapkan nilai hierarkis menjadi salah. Jika Anda ingin jenis posting kustom Anda berperilaku seperti Pages, Anda dapat mengatur nilai ini menjadi true.

Juga perhatikan penggunaan berulang dua puluh tiga, ini disebut domain teks. Jika tema Anda terjemahan dan Anda ingin jenis posting kustom Anda diterjemahkan, maka Anda perlu menyebutkan domain teks yang digunakan oleh tema Anda. Anda dapat menemukan domain teks tema Anda di dalamnya style.css file di direktori tema Anda Domain teks akan disebutkan di header file.

Menampilkan Jenis Pos Ubahsuaian di Situs Anda

WordPress hadir dengan dukungan untuk menampilkan jenis posting kustom Anda. Setelah Anda menambahkan beberapa item ke dalam jenis posting kustom baru Anda, sekarang saatnya menampilkannya di situs Anda.

Ada beberapa metode yang bisa Anda gunakan, masing-masing memiliki kelebihan tersendiri.

Menampilkan Custom Post Type Menggunakan Template Arsip Default

Pertama kamu bisa langsung ke Penampilan »Menu dan tambahkan link kustom ke menu Anda. Tautan khusus ini adalah tautan ke jenis pos khusus Anda. Jika Anda menggunakan permalinks SEO friendly maka URL CPT Anda kemungkinan besar akan seperti ini:

https://example.com/movies

Jika Anda tidak menggunakan permalink SEO friendly, maka URL jenis posting kustom Anda akan menjadi seperti ini:

https://example.com/?post_type=movies

Ganti example.com dengan nama domain dan film Anda sendiri dengan nama jenis posting kustom Anda. Simpan menu Anda dan kemudian kunjungi front-end dari situs Anda. Anda akan melihat menu baru yang Anda tambahkan, dan saat Anda mengekliknya, ini akan menampilkan halaman arsip jenis arsip kustom Anda menggunakan file template archive.php dalam tema Anda.

Menggunakan Template Kustom untuk Arsip CPT dan Entri Tunggal

Jika Anda tidak menyukai tampilan halaman arsip untuk jenis posting kustom Anda, Anda dapat menggunakan template khusus untuk arsip jenis pos kustom. Untuk melakukan itu semua yang perlu Anda lakukan adalah membuat file baru di direktori tema Anda dan menamainya arsip-movies.php . Ganti film dengan nama jenis posting khusus Anda.

Untuk memulai, Anda dapat menyalin konten tema Anda archive.php file ke arsip-movies.php template dan kemudian mulai memodifikasi untuk memenuhi kebutuhan Anda. Sekarang setiap kali halaman arsip untuk jenis posting kustom Anda diakses, template ini akan digunakan untuk menampilkannya.

Demikian pula, Anda juga dapat membuat template khusus untuk tampilan entri satu jenis pos Anda. Untuk melakukan itu Anda perlu membuat single-movies.php di direktori tema Anda Jangan lupa ganti film dengan nama custom post type.

Anda bisa memulai dengan menyalin konten tema Anda single.php template ke single-movies.php template dan kemudian mulai memodifikasi untuk memenuhi kebutuhan Anda.

Menampilkan Jenis Pos Kustom di Halaman Depan

Salah satu keuntungan menggunakan jenis pos khusus adalah membuat jenis konten khusus Anda jauh dari pos reguler Anda. Namun, jika Anda ingin menampilkannya di antara pos reguler Anda, Anda dapat melakukannya dengan menambahkan kode ini ke file functions.php tema Anda atau plugin khusus situs:

add_action ('pre_get_posts', 'add_my_post_types_to_query');

 fungsi add_my_post_types_to_query ($ query) {
 if (is_home () && $ query-> is_main_query ())
 $ query-> set ('post_type', array ('post', 'movies'));
 kembali $ query;
 } 

Jangan lupa ganti film dengan jenis posting khusus Anda.

Memeriksa Jenis Pos Kustom

Jika Anda sudah familiar dengan coding dan ingin menjalankan query loop di template Anda, maka berikut adalah cara melakukannya (Terkait: Apa itu Loop?).

Dengan melakukan query database, Anda dapat mengambil item dari jenis posting kustom.

'movies', 'posts_per_page' => 10);
 $ the_query = new WP_Query ($ args);
 ?> has_posts ()):?> have_posts ()): $ the_query-> the_post ();  ?> 

Dalam kode ini, pertama kita telah mendefinisikan jenis posting dan posting per halaman dalam argumen untuk kelas WP_Query baru kita. Setelah itu kami menjalankan kueri kami, mengambil kiriman dan menampilkannya di dalam lingkaran.

Menampilkan Jenis Pos Kustom di Widget

Anda akan melihat bahwa ada widget default di WordPress untuk menampilkan tulisan terbaru. Tapi widget ini tidak memungkinkan Anda untuk memilih jenis posting kustom. Bagaimana jika Anda ingin menampilkan entri terbaru dari jenis tulisan yang baru Anda buat di widget? Ada cara mudah untuk melakukan ini.

Hal pertama yang perlu Anda lakukan adalah menginstal dan mengaktifkan plugin Widget Posting Utama. Setelah aktivasi, cukup pergi ke Penampilan »Widget dan drag dan drop widget Posting Ultimate ke sidebar.

Widget yang hebat ini akan memungkinkan Anda menampilkan posting terbaru dari jenis posting. Anda juga bisa menampilkan post excerpt dengan link Baca lebih lajut atau bahkan menampilkan gambar fitur disamping judul posting. Konfigurasikan widget dengan memilih opsi yang Anda inginkan dan dengan memilih jenis posting kustom Anda. Setelah itu simpan perubahan Anda dan lihat widget beraksi di situs Anda.

Lebih Lanjut Custom Post Type Tweaks

Masih banyak lagi yang bisa Anda lakukan dengan jenis posting kustom Anda. Anda dapat belajar menambahkan jenis posting kustom Anda di RSS feed utama atau membuat umpan terpisah untuk setiap jenis posting kustom. Jika Anda menggunakan sistem komentar Disqus, maka checkout bagaimana cara menonaktifkan Disqus untuk jenis posting kustom di WordPress.