Sortir Query Artikel berdasarkan Format Post

Format Post adalah salah satu fitur wordpress yang terbilang jarang dimaksimalkan penggunaannya. Bahkan keberadaan fitur yang memungkinkan penayangan konten secara spesifik ini pun tidak banyak disadari. Secara default wordpress menyediakan 9 jenis post format + 1 format normal;

Jenis-jenis Format Post bawaan WordPress

  • Standard – Standar, Format umum yang, secara default menjadi jenis format artikel normal (secara spesifik tidak termasuk format post, tapi bisa disebut sebagai format normal)
  • Image – Bergambar, Tag <img /> pertama dalam posting dapat dianggap sebagai gambar. Atau, jika posting hanya terdiri dari URL, itu akan menjadi URL gambar dan judul posting (post_title) akan menjadi atribut judul untuk gambar
  • Gallery – Galeri, Format arikel yang berisi script galeri (contoh: gambar grid, carousel, dll) dan memiliki lampiran gambar
  • Quote – Kutipan, Artikel berisi blockquote yang tayang secara dominan. Atau, Bisajadi isi artikelnya memang hanya kutipan dengan sumber/penulis kutipannya sebagai judul
  • Chat – Obrolan, Transkrip obrolan
  • Link – Tautan, Tautan ke situs lain. Tampilan format ini menggunakan tag <a href=””> pertama dalam konten sebagai tautan eksternal. Alternatif lainnya; posting hanya terdiri dari URL
  • Video, Daftar video tunggal atau video. Tag <video /> atau objek / embed pertama dalam konten posting dapat dianggap sebagai video. Atau, jika posting hanya terdiri dari URL, maka itu adalah URL video. Juga dapat berisi video sebagai lampiran utama (yang tayang pada posisi featured image adalah video), jika dukungan video diaktifkan di blog (melalui plugin, atau pengaturan tertentu)
  • Audio, File audio atau daftar putar. Dapat digunakan untuk Podcasting
  • Status, Pembaruan status singkat, mirip dengan pembaruan status Twitter
  • Aside – Sampingan/Sambilan, Biasanya ditata tanpa judul, mirip dengan pembaruan catatan Facebook.

Sayangnya, dokumentasi codex seputar fitur ini terbilang kurang, banyak pertanyaan di forum tidak dijawab. Tema yang beredar juga (gratis maupun berbayar) tidak banyak yang memaksimalkan atau bahkan sekedar memanfaatkan fitur ini. Tutorial kali ini akan menghantarkan pada cara mesortir daftar artikel berdasarkan Format Post (baik untuk tayang pada sidebar, atau sebagai loop dari halaman arsip)

Query default WordPress

Tutorial ini mengasumsikan bahwa anda sebelumnya telah terbiasa dengan Query pada WordPress. Bentukan dasar dari Query posting WordPress pada umumnya adalah seperti ini:

<?php
$args = array (
'post_type' => 'post',
'posts_per_page' => '3',
'orderby' => 'date',
'order' => 'desc',
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) { 	while ( $query->have_posts() ) { $query->the_post();	?>

Perintah diatas berarti:

  • post_type jenis artikel yang akan di sorti, pada perintah diatas kita memanggi artikel dengan jenis post (jenis lainnya adalah page/laman)
  • posts_per_page jumlah yang ditayangkan sebanyak 3 post (jika anda mengaktifkan navigasi, maka penayangan pernavigasinya adalah 3 artikel)
  • orderby penyortiran artikel berdasarkan tanggal (3 artikel terbaru)
  • order dengan nilai desc artinya urutkan ketiga artikel tersebut dari besar ke kecil (jenis lainnya adalah ASC, pengurutan dari kecil ke besar)
  • Setelah argumen didefinisikan, WP_Query langsung di eksekusi pada loop/daftar post.

Mensortir artikel dengan format post normal

Melanjutkan contoh diatas, katakanlah Anda memiliki beberapa jenisn format post aktif di situs Anda dan hanya ingin menampilkan 3 artikel terbaru dengan format normal (format post standar). Tambahkan baris perintah sortir artikel diatas sehinggan menjadis seperti ini:

<?php
$args = array (
'post_type' => 'post',
'posts_per_page' => '3',
'orderby' => 'date',
'order' => 'desc',
'tax_query' => array( array(
            'taxonomy' => 'post_format',
            'field' => 'slug',
            'terms' => array('post-format-aside', 'post-format-gallery', 'post-format-link', 'post-format-image', 'post-format-quote', 'post-format-status', 'post-format-audio', 'post-format-chat', 'post-format-video'),
            'operator' => 'NOT IN'
           ) )
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) { 	while ( $query->have_posts() ) { $query->the_post();	?>

Bagian penting dari penambahan diatas adalah:

'tax_query' => array( array(
            'taxonomy' => 'post_format',
            'field' => 'slug',
            'terms' => array('post-format-aside', 'post-format-gallery', 'post-format-link', 'post-format-image', 'post-format-quote', 'post-format-status', 'post-format-audio', 'post-format-chat', 'post-format-video'),
            'operator' => 'NOT IN'
           ) )

Pada dasarnya fitur Format Post dapat dipahami sebagai taksonomi (sama halnya kategori dan tag) yang di kustom. Dapat anda lihat; query untuk format post hampir sama dengan yang diberlakukan pada taksonomi lainnya. Penambahan perintah diatas menyatakan bahwa 3 artikel yang disortir “NOT IN” atau tidak termasuk didalam format post tertentu (seluruh jenis format post berada didalam prasyarat terms yang di keterangkan = tidak termasuk/not in).

Menampilkan artikel dengan Format Post Galeri

'tax_query' => array( array(
            'taxonomy' => 'post_format',
            'field' => 'slug',
            'terms' => array('post-format-gallery'),
            'operator' => 'IN'
           ) )

Sebagaimana yang dapat anda lihat pada baris kode diatas, terjadi perubahan pada nilai operator menjadi “IN” (dari yang sebelumnya NOT IN). Demikian juga dengan terms, dari yang sebelumnya berisi semua jenis Format Post diubah nilainya menjadi hanya galeri. Artinya; tampilkan pada query – artikel yang termasuk dalam (IN) Format Post Galeri.

Catatan: Anda hanya dapat memiliki satu format post di bawah ketentuan sortir ketika mengajukan pertanyaan dengan nilai operator “IN”

Jika Anda ingin meminta posting dengan “format posting galeri” atau “format posting video”, maka perintah yang di perlukan adalah sesuatu seperti ini (perhatikan penambahan baris perintah relation dengan nilai OR):

'tax_query'   = >   array ( 
    'relation'   = >   'OR' , 
     array ( 
       'taxonomy'   = >   'post_format' , 
       'field'      = >   'slug' , 
       'terms'   = >   array ( 'post-format-gallery' ,   'post-format-video' ) , 
       'operator'   = >   'IN' , 
     ) , 
   ) 

Kesimpulan

Tutorial ini hanya pengantar singkat untuk mengenal fitur Format Post WordPress dan melakukan Penyortiran artikel dengan Query dari fitur yang cenderung tidak begitu dikenal ini.

Mau punya Tema WordPress unik ?, atau punya desain kesukaan yang ingin dibuat menjadi Tema WordPress ?

Pesan Jasa Desain Tema Wordpress Sekarang

Berikan tanggapan

This site uses Akismet to reduce spam. Learn how your comment data is processed.