2026年11月12日

2026年11月12日

Meta Box WordPress Tidak Muncul: Penyebab dan Cara Mengatasinya

Artikel ini adalah edisi lokal dari artikel asli berbahasa Jepang. Baca artikel asli berbahasa Jepang

Pendahuluan

Meta box yang ditambahkan oleh plugin tidak tampil di layar edit pos, meta box yang tadinya terlihat tiba-tiba hilang, atau meta box di sidebar tidak muncul setelah beralih ke block editor. Meta box yang tidak tampil berkaitan dengan pengaturan layar dan kompatibilitas dengan block editor.

Gejala dan penyebab

Penyebab utama meta box tidak tampil:

  • Disembunyikan di Opsi Layar: pengaturan tampilan per pengguna diatur ke "disembunyikan"
  • Tidak kompatibel dengan block editor: pengaturan __block_editor_compatible_meta_box diperlukan
  • Masalah prioritas hook: waktu eksekusi hook add_meta_boxes tidak sesuai
  • Kesalahan penentuan tipe pos: tipe pos pada argumen ketiga salah
  • Konflik plugin: plugin lain menghapus meta box

Langkah penyelesaian

Langkah 1: Periksa Opsi Layar

Penyebab yang paling sering adalah pengaturan sembunyi di Opsi Layar.

1. Klik "Opsi Layar" (Screen Options) di kanan atas layar edit pos

2. Periksa apakah centang pada meta box yang ingin ditampilkan terlepas

3. Beri centang lalu tutup, maka meta box akan tampil

Langkah 2: Periksa implementasi add_meta_box

// functions.php — menambahkan meta box dengan benar
add_action('add_meta_boxes', function() {
    add_meta_box(
        'my_meta_box_id',       // ID (string unik)
        'Info Kustom',           // Judul
        'render_my_meta_box',   // Fungsi callback
        ['post', 'page'],       // Tipe pos (bisa beberapa dalam array)
        'normal',               // Konteks: normal/side/advanced
        'high'                  // Prioritas: high/core/default/low
    );
});

function render_my_meta_box($post) {
    wp_nonce_field('my_meta_nonce_action', 'my_meta_nonce');
    $value = get_post_meta($post->ID, '_my_field', true);
    echo '<input type="text" name="my_field" value="' . esc_attr($value) . '">';
}

Langkah 3: Tampilkan meta box di block editor

Dukungan meta box di block editor (Gutenberg) terbatas.

// Tampilkan meta box juga di block editor
add_action('add_meta_boxes', function() {
    add_meta_box(
        'my_meta_box_id',
        'Info Kustom',
        'render_my_meta_box',
        'post',
        'normal',
        'high',
        // Nyatakan kompatibilitas dengan block editor secara eksplisit
        ['__block_editor_compatible_meta_box' => true]
    );
});

Langkah 4: Nonaktifkan block editor untuk memeriksa

// functions.php — nonaktifkan block editor untuk tipe pos tertentu
add_filter('use_block_editor_for_post_type', function($use_block_editor, $post_type) {
    if ($post_type === 'post') {
        return false;  // Beralih ke classic editor
    }
    return $use_block_editor;
}, 10, 2);

Atau Anda juga bisa memasang plugin "Classic Editor" lalu mengaturnya dari layar admin.

Langkah 5: Debug tampilan meta box

// Periksa apakah meta box sudah terdaftar
add_action('add_meta_boxes', function() {
    global $wp_meta_boxes;
    error_log('Meta boxes: ' . print_r(array_keys($wp_meta_boxes), true));
}, 999);  // Dijalankan paling akhir dengan prioritas 999

Langkah 6: Periksa konflik plugin

# Nonaktifkan semua plugin dengan WP-CLI lalu periksa meta box
wp plugin deactivate --all
# Buka layar edit pos di browser dan periksa apakah meta box muncul
# Jika tidak ada masalah, aktifkan plugin satu per satu untuk menemukan penyebabnya
wp plugin activate plugin-name

Langkah 7: Reset user meta

Pengaturan Opsi Layar disimpan di user meta.

// Reset pengaturan tampilan meta box untuk pengguna tertentu
delete_user_meta(get_current_user_id(), 'metaboxhidden_post');
delete_user_meta(get_current_user_id(), 'metaboxhidden_page');

Catatan penting

  • Pengaturan Opsi Layar disimpan per pengguna. Pengguna lain perlu mengaturnya masing-masing.
  • Di block editor, hanya meta box berkonteks side yang tampil di sidebar.
  • Jika memakai ACF (Advanced Custom Fields), diperlukan pengaturan grup field yang mendukung block editor.

Ringkasan

Jika meta box tidak tampil, periksa dulu centang di "Opsi Layar". Di block editor, pengaturan __block_editor_compatible_meta_box diperlukan. Jika masih belum teratasi, pisahkan kemungkinan konflik plugin. Artikel terkait: Jika custom field tidak bisa disimpan, Jika block editor mengalami crash

Ada pertanyaan tentang WordPress? Penerbit situs ini berada di Jepang dan membalas dalam bahasa Jepang. Kontak (bahasa Jepang)

お気軽にご相談ください

お見積りへ お問い合わせへ
▲