Bagaimana menerapkan jenis posting khusus dan bidang khusus di WordPress

Diterbitkan: 2014-06-10

WordPress tidak hanya terbatas pada blogging lagi — ini adalah sistem manajemen konten berfitur lengkap yang mampu menampilkan dan memformat segala jenis konten yang Anda berikan. Jadi mari kita bicara tentang dua cara hebat untuk memperluas WordPress: jenis posting khusus dan bidang khusus.

Jenis Posting Kustom

Sepertinya situs pengujian kami, Monday Morning Mug (yang kami gunakan dalam posting blog integrasi email kami), memiliki masalah baru untuk ditangani. Blog kami menjadi sangat besar sehingga kami mempekerjakan staf review kopi penuh waktu. Mereka sibuk menyeduh kopi dan menulis ulasan. Mereka telah memposting ulasan ini ke blog, tetapi pembaca kami memberi tahu kami bahwa semua ulasan ini menghalangi konten blog "asli" kami. Kami perlu membuat tempat terpisah untuk ulasan kopi kami, tetapi halaman WordPress normal tidak akan memotongnya. Para pengulas juga telah menyarankan bahwa mereka ingin memiliki tempat untuk menyimpan informasi dengan mudah, seperti negara asal kopi dan catatan rasa, di situs web. Ini terdengar seperti penggunaan yang sempurna untuk jenis posting khusus, fitur WordPress yang memungkinkan kami membuat bagian konten baru di situs kami.

Jenis kiriman khusus sangat fleksibel dan dapat diterapkan untuk segala jenis konten: kutipan, video, dan berbagai warna cat adalah contoh jenis kiriman khusus.

Kami ingin menambahkan bagian baru dari situs web kami di subdirektori /coffees/ yang penuh dengan ulasan kopi. Ini akan membutuhkan sedikit pertikaian kode, tetapi ini harus menjadi proses yang relatif mudah.

Catatan: Untuk melakukan ini, Anda harus dapat mengedit file .php di direktori instalasi WordPress Anda, yang biasanya memerlukan akses FTP/SFTP/SSH. Pastikan Anda memiliki ini sebelum melanjutkan.

Setiap tema WordPress dapat menggunakan file functions.php, yang terletak di:
/wp-content/themes/your_current_theme/functions.php
File ini umumnya digunakan untuk perubahan situs khusus tema serta modifikasi situs kustom yang lebih kecil, seperti yang akan kita lakukan.

Catatan: Kami akan menambahkan kode ke file functions.php , yang berarti itu adalah tema khusus. Jika Anda menambahkan ini ke file functions.php Anda dan kemudian mengubah tema pada instalasi WordPress Anda, Anda akan menghapus jenis posting kustom dari situs web Anda. Anda dapat mempertahankan tipe konten khusus dengan memanfaatkan plugin, seperti UI Jenis Posting Kustom.

1. Buka file functions.php Anda dan tambahkan kode berikut di bagian bawah file:

function create_new_post_type() {
$labels = array(
'name' 			 => __('Coffee Reviews'),
'singular_name'  => __('Coffee Review'),
);
$args = array(
'labels'      	 => $labels,
'public' 	  	 => true,
'has_archive' 	 => true,
'menu_position'  => 5,
'description'    => 'Reviews And Types of Coffee',
'rewrite'     	 =>
array('slug' => 'reviews'),
'supports'    	 =>
array( 'title',
'comments', 'editor',
'thumbnail', 'custom-fields', 'revisions'),
);

register_post_type('Reviews', $args);
}
add_action('init', 'create_new_post_type');

Karena kita tidak terlalu suka menggunakan kode tanpa mengetahui fungsinya, mari kita telusuri apa yang dilakukan kode ini.

Catatan: Anda mungkin telah memperhatikan bahwa $labels dan $args didefinisikan di luar fungsi register_post_type() meskipun mereka hanya diteruskan sebagai argumen ke fungsi itu nanti. Metode ini membantu pengaturan dan keterbacaan, tetapi Anda dapat memadatkan kedua array menjadi satu argumen. Itu hanya akan lebih sulit untuk dipahami.

Array $args berisi semua spesifikasi yang kita butuhkan untuk mendefinisikan tipe konten baru kita. Inilah yang dilakukan:

  • 'labels' – Sebuah array yang mendefinisikan apa yang akan kita sebut tipe konten kita. Ada banyak lagi label yang tersedia yang dapat Anda gunakan, dan daftar lengkapnya tersedia dalam dokumentasi di sini.
  • 'public' – Boolean yang menentukan apakah postingan dapat dilihat di luar panel Admin atau tidak.
  • 'has_archive' – Jika benar, boolean ini akan membuat arsip jenis kiriman khusus ini, sama seperti kiriman WordPress standar.
  • 'menu_position' – Bilangan bulat ini berubah di mana tombol navigasi pos kustom Anda berada. Angka 5 menunjukkan bahwa itu akan langsung di bawah tab posting. Untuk daftar lengkap kode numerik, lihat dokumentasi yang sama.
  • 'description' – Menjelaskan jenis posting.
  • 'rewrite' – Ini mengubah slug menjadi “reviews”, yang akan membantu membuat struktur permalink yang dapat digunakan. (Bisa juga boolean; periksa dokumentasi untuk informasi lebih lanjut.)
  • 'supports' – Array yang menentukan fitur pengeditan/posting WordPress asli yang diaktifkan. Yang ini cukup fleksibel, dan ada lebih banyak opsi, tetapi kami akan membutuhkan setidaknya custom-fields dan editor untuk posting ini.

Fungsi register_post_type() dipanggil berikutnya, yang membuat tipe posting baru bernama Review menggunakan array argumen yang baru saja kita definisikan.

Akhirnya, kita harus memanggil satu fungsi terakhir untuk menyelesaikan proses. register_post_type() harus selalu diinisialisasi oleh tindakan 'init'. Kita dapat menghubungkan fungsi baru kita ke init dengan memanggil

add_action(‘init’, ‘create_new_post_type’);

Luar biasa! Sekarang jika kita masuk ke panel admin WordPress, kita akan melihat tab baru di sebelah kiri yang disebut “Ulasan.”

kopi_review

2. Sekarang kami memiliki Ulasan yang diatur sebagai jenis kiriman khusus, kami perlu memperbarui struktur tautan permanen sehingga pembaca kami dapat dengan mudah menemukan kiriman kami. Plus itu membuat URL kami lebih mudah dibaca dan SEO friendly.

3. Di bawah bilah menu Settings -> Permalinks, Anda akan menemukan banyak opsi umum untuk struktur permalink. Kami akan mengubah pengaturan khusus agar sesuai dengan bidang /%category%/%postname%/

Ini berarti WordPress akan menghasilkan URL yang sesuai dengan kategori dan judul posting kita.

Catatan: Ini adalah perubahan di seluruh situs dan akan memengaruhi posting Anda di kategori lain.

custom_permalink

Sekarang mari kita lihat URL posting yang ditulis pengulas kami untuk kopi Sumatra Ketiara:

sumatra_permalink

Fantastis! Lihat URL itu. Kami memiliki ulasan yang dipisahkan ke dalam direktori mereka sendiri dan URL ditulis dalam bahasa Inggris biasa. Sekarang pembaca kami tahu persis apa yang akan mereka dapatkan ketika mereka mengeklik tautan.

Bidang Kustom

Meskipun pengulas kami menyukai bagian Ulasan yang baru, mereka meminta kami untuk memasukkan sesuatu di bagian belakang yang memungkinkan mereka memasukkan info umum yang mereka tulis tentang setiap kopi, seperti negara asal dan catatan rasa. Ini terdengar seperti penggunaan bidang khusus yang sempurna, yang untungnya sangat mudah diterapkan.

1. Pada editor ulasan individual, Anda akan melihat tombol opsi layar di sudut kanan atas editor:

screen_options

yang meluas ke ini ketika diklik:

screen_options_dropdown

2. Centang kotak Bidang Kustom.

Di bawah editor, Anda akan melihat kotak Custom Fields yang baru saja kita aktifkan.

custom_fields_blank

3. Anda dapat mengetik apa saja di kedua kotak; apa pun yang Anda ketik dan tambahkan di bidang Nama akan disimpan untuk digunakan nanti. Di sini, kami mencantumkan daerah dan negara asal kopi kami.

custom_fields_region

Bidang khusus membuatnya sangat mudah untuk menstandardisasi data yang penting untuk kategori di setiap pos di tempat terpisah. Sekarang kita hanya perlu mendapatkan informasi itu untuk ditampilkan di ulasan kita.

4. Kami akan menambahkan tag kode ini ke salah satu dokumen tema kami:

<br /><?php the_meta(); ?><br />

Catatan: Dalam contoh ini, kami akan menempatkan tag ini di file content.php kami, tetapi Anda harus menemukan lokasi yang cocok untuk tabel nilai Anda. Anda juga harus menata tag ini agar sesuai dengan tema lainnya, yang dapat Anda baca lebih lanjut di sini.

Memeriksa kembali ke blog kami, kami dapat melihat bahwa tag kami telah memasukkan daftar ke dalam ulasan kami.

custom_field_example

Megah! Sekarang pembaca dan pengulas kami sama-sama senang. Kami dapat membuat jenis posting khusus yang memungkinkan kami untuk menyimpan ulasan tentang kopi, dan kami dapat memberikan tempat bagi pengulas kami untuk menyimpan semua informasi penting mereka untuk setiap ulasan yang berbeda.