Pada artikel sebelumnya, CMB2 termasuk salah satu plugin yang sangat membantu saya dalam membangun situs WordPress. Pada artikel kali ini saya akan membahas cara menggunakan plugin CMB2 untuk membuat Custom Meta Box.

Artikel Sebelumnya: https://binus.ac.id/knowledge/2020/12/5-plugin-wordpress-yang-sangat-membantu-dalam-pembuatan-website-wordpress/

Sebelumnya, pastikan kalau plugin CMB2 sudah diinstall di situs WordPress Anda. Setelah itu aktifkan plugin nya.

01. Basic Custom Meta Box
Untuk menambahkan custom meta box silahkan buka file “functions.php”. Lalu ketikan kode berikut.

// Menambahkan meta box baru pada konten Post
add_action('cmb2_admin_init', 'register_post_custom_meta');
function register_post_custom_meta() {
  $cmb = new_cmb2_box(array(
    'id' => 'new-post-metabox',
    'title' => 'New Custom MetaBox',

    // menentukan meta box akan tampil di konten apa
    // apakah di 'post', 'page', atau custom post lain nya
    'object_types' => array('post')
  ));

  // add reguler text
  $cmb->add_field(array(
    'id'   => 'reference_link',
    'name' => 'Reference Link',
    'desc' => '',
    'type' => 'text'
  ));
}

Kode tersebut akan menghasilkan custom meta box berikut.

Jika ingin menampilkan nya di konten Page atau Post Type lainnya, silahkan ganti kode berikut.

// Jika ingin tampil di konten Page
'object_types' => array('page')

// Atau jika ingin tampil di Post dan Page
'object_types' => array('post', 'page')

// Atau jika ingin tampil di post type lainnya
'object_types' => array('portfolio')

Dan untuk pilihan tipe input form nya, bisa dilihat di link berikut.
https://cmb2.io/docs/field-types

Untuk menampilkan hasilnya di Front-End adalah dengan kode berikut.

echo get_post_meta($post_id, 'reference_link', true);

02. Taxonomy Custom Meta Box
Untuk menambahkan Custom Meta Box pada Taxonomy (category, post tag, dsb), silahkan edit file “functions.php” kembali. Tambahkan kode berikut.

add_action('cmb2_admin_init', 'register_tax_custom_meta');
function register_tax_custom_meta() {
  $cmb = new_cmb2_box(array(
    'id' => 'new-tax-metabox',
    'title' => 'New Custom MetaBox',

    // isi dengan 'term' untuk menampilkan di taxonomy
    'object_types' => array('term'),

    // tentukan di taxonomy mana custom field akan ditampilkan
    'taxonomies' => array('category', 'post_tag')
  ));

  // add reguler text
  $cmb->add_field(array(
    'id'   => 'reference_link',
    'name' => 'Reference Link',
    'desc' => '',
    'type' => 'text'
  ));
}

Kode tersebut akan menghasilkan custom meta box berikut.

Untuk menampilkan hasilnya di Front-End adalah dengan kode berikut.

echo get_term_meta($term_id, 'reference_link', true);

Sampai sini, mudah bukan membuat Custom Meta Box dengan plugin CMB2? Untuk dokumentasi yang lebih jelas, silahkan kunjungi website official nya.

https://cmb2.io/

Sekian artikel kali ini, semoga bermanfaat.

Photo by Lavi Perchik on Unsplash