Cara Membuat dan Menggunakan Bidang Kustom WordPress
Diterbitkan: 2020-04-23Salah satu keunggulan utama WordPress adalah keserbagunaannya, yang dimungkinkan berkat fitur ekstensibilitas bawaannya. Di antara berbagai rumus ekstensi yang ditawarkannya, kami menemukan bidang khusus :
WordPress memiliki kemampuan untuk mengizinkan penulis posting untuk menetapkan bidang khusus ke sebuah posting. Informasi tambahan sewenang-wenang ini dikenal sebagai metadata .
Metadata ditangani dengan pasangan kunci/nilai . Kuncinya adalah nama elemen metadata. Nilainya adalah informasi yang akan muncul dalam daftar metadata pada setiap postingan individu yang terkait dengan informasi tersebut.
Dokumentasi WordPress.org
Misalnya, jika kita ingin membuat metadata tentang konsep yang berkaitan dengan dunia motor, kita akan memiliki hal-hal seperti:
- Merk : Ford
- Model : Fokus
- Warna : putih
- Daya : 110hp
- dll
Dalam posting hari ini saya akan menunjukkan kepada Anda cara membuat bidang khusus, cara menggunakannya, dan bagaimana mereka dapat membantu Anda sebagai pengguna dan/atau pengembang WordPress. Harap perhatikan bahwa Anda harus memiliki beberapa pemahaman dasar tentang cara membuat kode di WordPress… tetapi saya harap Anda dapat mengikuti posting ini dengan mudah, terutama ketika saya menunjukkan kepada Anda cara menggunakan plugin yang luar biasa untuk bekerja dengan bidang khusus: Bidang Kustom Lanjutan.
Cara Kerja Bidang Kustom WordPress
Cara terbaik untuk memahami apa itu bidang khusus dan cara kerjanya adalah dengan melihat database WordPress. Seperti yang mungkin sudah Anda ketahui, setiap kali Anda membuat posting, halaman, atau (hampir) jenis konten lainnya di WordPress, konten baru ini disimpan dalam tabel bernama wp_posts (awalan dapat berubah).
Tabel dalam database sama seperti tabel lain yang pernah Anda kerjakan sebelumnya. Pada dasarnya, mereka memiliki sekumpulan kolom yang mendefinisikan "apa yang dapat Anda simpan" dan baris dengan informasi spesifik. Dalam kasus wp_posts , kolomnya adalah hal-hal seperti judul , konten , penulis , tanggal publikasi , dan sebagainya. Tidak ada yang mewah, jujur saja:

wp_posts dalam database WordPress.Salah satu "masalah" dalam menggunakan tabel adalah informasi yang dapat Anda simpan di dalamnya terbatas pada kolom yang dimilikinya. Jika Anda ingin menyimpan informasi tentang konsep baru, Anda tidak akan bisa. Jadi, bagaimana Anda bisa membuat bidang khusus, jika tabel sudah diatur? Cukup sederhana, Anda hanya perlu tabel baru yang dirancang untuk itu.
Di setiap database WordPress ada tabel lain yang disebut wp_postmeta seperti berikut:

wp_postmeta di database WordPress. Seperti yang Anda lihat di tangkapan layar sebelumnya, tabel metadata dirancang sedemikian rupa sehingga kita dapat membuat pasangan kunci/nilai menggunakan kolom meta_key dan meta_value dan mengaitkan setiap pasangan dengan konten tertentu menggunakan kolom post_id . Cukup mudah!
Jadi mari kita lihat lebih dekat bagaimana kita bisa bekerja dengan tabel ini!
Cara Membuat Bidang Kustom Baru
Seperti yang telah kita lihat, bidang khusus selalu dikaitkan dengan pos tertentu. Oleh karena itu, Anda akan mengharapkan semacam antarmuka pengguna di editor untuk mengeditnya, bukan? Sayangnya, jika Anda melihat Gutenberg, tidak ada…
Untuk mengedit bidang khusus di editor WordPress, Anda harus mengaktifkan panel lanjutan. Cukup klik ikon kanan atas di editor dan kemudian klik Opsi :

Ini akan membuka jendela baru dengan panel berbeda yang tersedia di Gutenberg. Temukan yang bernama Custom Fields dan aktifkan:

Setelah diaktifkan, Anda dapat dengan mudah membuat dan mengedit bidang khusus kiriman Anda:

Antarmuka sederhana ini memungkinkan kita untuk membuat pasangan kunci/nilai sebanyak yang kita inginkan. Pada tangkapan layar di atas, misalnya, Anda melihat bagaimana saya telah menambahkan beberapa bidang yang saya perkenalkan di awal posting ini: nelio_brand , nelio_model , nelio_color , dan nelio_hp .

Cara Menggunakan Bidang Kustom
Untuk menggunakan bidang khusus, Anda memerlukan tiga hal: (a) pengidentifikasi posting, (b) nama bidang yang ingin Anda gunakan, dan (c) memutuskan di mana Anda ingin menggunakannya. Misalnya, saya ingin menampilkan bidang nelio_brand yang kita buat pada contoh di atas di akhir posting. Untuk mengambil nilainya, ada fungsi bernama get_post_meta yang bisa kita gunakan sebagai berikut:
function nelio_add_brand_field( $content ) { $brand = get_post_meta( get_the_ID(), 'nelio_brand', true ); return "{$content}\n<p><strong>Brand:<strong> {$brand}</p>"; } add_filter( 'the_content', 'nelio_add_brand_field' );Perhatikan bahwa dalam contoh sebelumnya kita membahas tiga hal yang saya sebutkan sebelumnya:
- Parameter pertama
get_post_metaadalah pengenal postingan yang saya minati. Dalam hal ini, kami menggunakanget_the_ID(), yang mengembalikan ID postingan saat ini. - Parameter kedua adalah nama bidang meta kami (dalam hal ini,
nelio_brand). - Terakhir, kami menggunakan bidang meta di front-end, sebagai sesuatu yang ingin kami tampilkan di akhir konten posting. Dan Anda dapat mengetahuinya karena saya mengambil dan menggunakannya selama filter
the_content.
Hasil dari melakukan ini adalah sesuatu yang mirip dengan apa yang dapat Anda lihat di tangkapan layar berikut:

Tapi ini hanya contoh, tentu saja! Anda dapat menggunakan bidang khusus dalam banyak cara selain "mencetak sesuatu di front-end." Misalnya, Nelio A/B Testing adalah salah satu plugin yang kami buat dan dirancang untuk menjalankan pengujian terpisah di situs WordPress. Pengujian A/B memerlukan konten alternatif untuk dibuat, dan plugin kami menggunakan bidang khusus untuk memberi label konten alternatif seperti itu dan membatasi bagaimana dan kapan konten ini dapat diakses oleh pengunjung.
Fungsi WordPress untuk Mengelola Bidang Kustom
Dengan cara yang sama seperti kita memiliki metode untuk mengambil nilai bidang khusus ( get_post_meta ), WordPress memiliki metode tambahan untuk membuat, memperbarui, dan menghapus bidang khusus secara terprogram: add_post_meta , update_post_meta , dan delete_post_meta . Fungsi-fungsi ini berfungsi seperti yang Anda harapkan, jadi saya tidak akan mengganggu Anda dengan penjelasan lebih lanjut…
Apa itu dan bagaimana menggunakan Bidang Kustom Tingkat Lanjut
Sekarang setelah Anda mengetahui cara kerja bidang khusus di WordPress, saya rasa saya sudah dapat memberi Anda kabar baik: ada beberapa plugin yang sangat menyederhanakan proses bekerja dengan bidang khusus!
Salah satu plugin paling terkenal dan berperingkat terbaik untuk membuat metadata di situs WordPress adalah Bidang Kustom Tingkat Lanjut. Dengannya, Anda tidak hanya dapat mendefinisikan bidang khusus dengan cara yang lebih sederhana, tetapi Anda juga akan memiliki kemungkinan menikmati antarmuka pengguna yang ditingkatkan untuk menangani bidang-bidang ini. Antarmuka ini memastikan bahwa nilai yang Anda tetapkan masuk akal dan bermakna secara semantik: tanggal, gambar, galeri, rentang, angka... sebut saja!

Jika Anda ingin mempelajari lebih lanjut tentang ACF, ada banyak sumber di luar sana. Tapi saya pikir ceramah Jo Minney ini benar-benar dapat membantu Anda memulai:
Semoga pengenalan kecil pada bidang khusus ini akan membantu Anda dalam perjalanan untuk menjadi pengembang WordPress yang lebih baik!
Gambar unggulan oleh Polina Rytova di Unsplash.
