Cara Membuat Custom Post Type (CPT) di WordPress Tanpa Plugin

Friday, 28 March 2025

Dalam pengembangan situs WordPress, Anda mungkin ingin menambahkan jenis konten khusus di luar postingan dan halaman bawaan. Di sinilah Custom Post Type (CPT) berperan. CPT WordPress memungkinkan Anda membuat tipe konten baru, seperti portofolio, testimonial, atau produk, yang dapat dikelola secara terpisah di dashboard WordPress. Meskipun ada plugin seperti Custom Post Type UI yang mempermudah proses ini, Anda juga bisa membuat custom post type WordPress secara manual tanpa plugin dengan menambahkan kode ke file tema Anda. Dalam artikel ini, kita akan membahas cara membuat Custom Post Type di WordPress tanpa plugin melalui tutorial WordPress sederhana, menggunakan kata kunci seperti custom post type WordPress, CPT WordPress, dan tutorial WordPress.

Apa Itu Custom Post Type (CPT)?

Custom Post Type adalah tipe konten khusus yang Anda definisikan sendiri di WordPress. Secara default, WordPress menyediakan dua tipe konten utama: Posts (untuk blog) dan Pages (untuk halaman statis). Namun, dengan CPT, Anda bisa membuat tipe konten tambahan yang sesuai dengan kebutuhan situs Anda, misalnya “Buku”, “Acara”, atau “Resep”. Membuat CPT tanpa plugin memberi Anda kontrol penuh atas fungsionalitas dan meminimalkan ketergantungan pada alat pihak ketiga.
Langkah-Langkah Membuat Custom Post Type Tanpa Plugin
Berikut adalah panduan langkah demi langkah untuk membuat CPT WordPress secara manual:
1. Siapkan File Tema Anda
Untuk menambahkan CPT, Anda perlu mengedit file tema WordPress, khususnya file functions.php. File ini berfungsi untuk menambahkan fungsi kustom ke situs Anda.
  • Buka dashboard WordPress Anda.
  • Pergi ke Appearance > Theme File Editor.
  • Pilih file functions.php dari daftar file di sisi kanan.
  • Alternatifnya, gunakan FTP/SFTP atau cPanel untuk mengakses file ini di direktori tema Anda (misalnya, /wp-content/themes/nama-tema/functions.php).
Catatan: Sebaiknya gunakan child theme agar perubahan Anda tidak hilang saat tema diperbarui. Jika belum punya child theme, buat satu terlebih dahulu.
2. Tambahkan Fungsi untuk Mendaftarkan CPT
WordPress menyediakan fungsi register_post_type() untuk membuat CPT. Fungsi ini harus dijalankan saat WordPress dimuat, jadi kita akan membungkusnya dalam hook init.
Tambahkan kode berikut ke dalam file functions.php:
php
function create_custom_post_type() {
    register_post_type('portfolio', // Nama unik untuk CPT (tanpa spasi, huruf kecil)
        array(
            'labels' => array(
                'name' => __('Portfolios'), // Nama plural di dashboard
                'singular_name' => __('Portfolio'), // Nama tunggal
                'add_new' => __('Add New Portfolio'), // Teks tombol "Tambah"
                'add_new_item' => __('Add New Portfolio Item'), // Judul saat menambah item
                'edit_item' => __('Edit Portfolio'), // Teks saat mengedit
                'new_item' => __('New Portfolio'), // Teks item baru
                'view_item' => __('View Portfolio'), // Teks untuk melihat
                'all_items' => __('All Portfolios'), // Teks untuk semua item
                'search_items' => __('Search Portfolios'), // Teks pencarian
            ),
            'public' => true, // Menentukan apakah CPT bisa dilihat publik
            'has_archive' => true, // Mengaktifkan halaman arsip
            'supports' => array('title', 'editor', 'thumbnail'), // Fitur yang didukung (judul, konten, gambar unggulan)
            'menu_icon' => 'dashicons-portfolio', // Ikon menu di dashboard
            'show_in_rest' => true, // Mendukung REST API (penting untuk editor Gutenberg)
            'rewrite' => array('slug' => 'portfolios'), // URL slug untuk CPT
        )
    );
}
add_action('init', 'create_custom_post_type');
Penjelasan Kode:
  • portfolio: Nama unik CPT Anda (ganti sesuai kebutuhan, misalnya event atau testimonial).
  • labels: Menentukan teks yang muncul di dashboard WordPress.
  • public: Jika true, CPT akan muncul di frontend dan backend.
  • supports: Fitur yang tersedia, seperti judul, editor, atau gambar unggulan.
  • menu_icon: Ikon dashboard (lihat daftar ikon di Dashicons).
  • rewrite: Menentukan slug URL (misalnya, yoursite.com/portfolios).
3. Simpan dan Periksa Dashboard
Setelah menambahkan kode dan menyimpan file functions.php, periksa dashboard WordPress Anda. Anda akan melihat menu baru bernama “Portfolios” di sisi kiri. Klik untuk menambahkan item baru, mengedit, atau melihat semua entri.
Jika menu tidak muncul, pastikan:
  • Kode tidak mengandung kesalahan sintaks.
  • Anda menggunakan child theme atau file tema yang benar.
4. Tampilkan CPT di Frontend (Opsional)
Secara default, CPT tidak akan otomatis muncul di situs Anda kecuali Anda membuat template untuknya. Berikut cara menampilkannya:
a. Buat Template Single
Buat file bernama single-portfolio.php di direktori tema Anda untuk menampilkan satu entri CPT:
php
<?php get_header(); ?>
<div class="content">
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
        <h1><?php the_title(); ?></h1>
        <div><?php the_content(); ?></div>
        <?php if (has_post_thumbnail()) : ?>
            <?php the_post_thumbnail(); ?>
        <?php endif; ?>
    <?php endwhile; endif; ?>
</div>
<?php get_footer(); ?>
b. Buat Template Arsip
Buat file archive-portfolio.php untuk menampilkan daftar semua entri:
php
<?php get_header(); ?>
<div class="archive">
    <h1>Portfolio</h1>
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
        <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
        <?php the_excerpt(); ?>
    <?php endwhile; endif; ?>
</div>
<?php get_footer(); ?>
c. Perbarui Permalink
Setelah menambahkan template, pergi ke Settings > Permalinks dan klik “Save Changes” untuk memastikan struktur URL diperbarui.
5. Tambahkan Kustomisasi Tambahan (Opsional)
Anda bisa memperluas CPT dengan:
  • Taxonomies: Tambahkan kategori atau tag khusus dengan register_taxonomy().
  • Custom Fields: Gunakan add_meta_box() untuk menambahkan kolom tambahan (misalnya, tanggal acara atau harga produk).
Contoh menambahkan taksonomi:
php
function create_portfolio_taxonomy() {
    register_taxonomy(
        'portfolio_category',
        'portfolio',
        array(
            'label' => __('Portfolio Categories'),
            'rewrite' => array('slug' => 'portfolio-category'),
            'hierarchical' => true,
        )
    );
}
add_action('init', 'create_portfolio_taxonomy');
Kelebihan Membuat CPT Tanpa Plugin
  • Kontrol Penuh: Anda bisa menyesuaikan CPT sesuai kebutuhan tanpa batasan plugin.
  • Ringan: Tidak menambah beban situs dengan plugin tambahan.
  • Gratis: Tidak ada biaya langganan atau pembelian.
Kekurangan
  • Memerlukan Pengetahuan Coding: Anda harus paham dasar PHP dan WordPress.
  • Waktu: Lebih lambat dibandingkan menggunakan plugin dengan antarmuka grafis.
Tips untuk Sukses
  • Backup Situs: Selalu buat cadangan sebelum mengedit file tema.
  • Gunakan Child Theme: Hindari kehilangan perubahan saat tema diperbarui.
  • Uji di Localhost: Coba kode di lingkungan lokal sebelum diterapkan di situs live.
Kesimpulan
Membuat custom post type WordPress tanpa plugin adalah cara yang fleksibel dan hemat biaya untuk memperluas fungsionalitas situs Anda. Dengan menambahkan kode sederhana ke functions.php dan membuat template jika diperlukan, Anda dapat mengelola tipe konten khusus seperti profesional. Melalui tutorial WordPress ini, Anda kini memiliki dasar untuk memulai proyek CPT WordPress Anda sendiri. Jika Anda nyaman dengan coding, metode ini adalah pilihan ideal untuk mengoptimalkan situs Anda tanpa ketergantungan pada plugin!
bikin wesbite murah

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

jasa website murah

Portofolio Terbaru

Pin It on Pinterest

Share This
bikin wesbite murah