WP_Query()
adalah sebuah kelas pada WordPress yang digunakan untuk membuat kueri untuk mengambil postingan dan halaman dari database WordPress. Dengan WP_Query()
, kita dapat mengambil postingan dan halaman dengan berbagai parameter, seperti kategori, tag, penulis, tanggal, dan lain-lain. Selain itu, WP_Query()
juga menyediakan berbagai opsi untuk mengurutkan dan membatasi jumlah postingan yang diambil.
WP_Query()
sangat berguna ketika kita ingin menampilkan postingan secara dinamis di halaman web WordPress, seperti pada halaman arsip, halaman kategori, halaman pencarian, dan lain-lain. Dalam penggunaannya, WP_Query()
memerlukan argumen $args
yang berisi parameter-parameter yang digunakan untuk mengambil postingan dari database.
Di dalam pemrograman WordPress, kita sering kali menggunakan WP_Query()
bersamaan dengan loop bawaan WordPress, yaitu while ( have_posts() ) : the_post();
. Loop ini digunakan untuk menampilkan postingan yang telah diambil menggunakan WP_Query()
secara berulang-ulang. Setelah loop selesai, kita juga perlu mengatur ulang query dengan menggunakan fungsi wp_reset_postdata()
untuk menghindari konflik dengan query lain yang mungkin digunakan di halaman tersebut.
Contoh Penggunaan WP_Query
Contoh penggunaan WP_Query
adalah sebagai berikut:
<?php
$args = array(
'post_type' => 'post',
'category_name' => 'nama-kategori',
'posts_per_page' => 10
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
// tampilkan post
}
} else {
// tidak ada post yang ditemukan
}
?>
Dalam contoh kode di atas, WP_Query
digunakan untuk membuat query post yang memuat post dari kategori tertentu, dengan jumlah maksimal post sebanyak 10 post. Setelah query berhasil dieksekusi, post ditampilkan menggunakan loop while
dan fungsi the_post()
.
Kamu juga dapat menentukan parameter lainnya pada $args
sesuai dengan kebutuhan Kamu . Informasi lebih lengkap mengenai parameter WP_Query
dapat ditemukan di dokumentasi WordPress.
Parameter $args pada WP_Query
Parameter $args
pada WP_Query
digunakan untuk mengatur query post, halaman, atau tipe konten lainnya pada WordPress. Parameter tersebut memiliki banyak nilai yang dapat digunakan untuk mengatur query. Beberapa parameter umum yang dapat digunakan di antaranya adalah:
post_type
: Tipe konten yang ingin ditampilkan, sepertipost
,page
,attachment
, atau tipe konten kustom.posts_per_page
: Jumlah post yang ingin ditampilkan pada satu halaman.category_name
: Nama kategori post yang ingin ditampilkan.tag
: Nama tag post yang ingin ditampilkan.author
: ID pengguna yang ingin ditampilkan.post_status
: Status post yang ingin ditampilkan, sepertipublish
,draft
, atauprivate
.meta_key
danmeta_value
: Menampilkan post berdasarkan nilai metadata tertentu.
Selain parameter-parameter di atas, masih banyak lagi parameter yang dapat digunakan di dalam $args
. Semua parameter yang tersedia dapat dilihat di dokumentasi resmi WordPress di https://developer.wordpress.org/reference/classes/wp_query/.
Penutup
Setelah selesai menggunakan objek WP_Query
, Kamu perlu mengembalikan variabel global seperti $post
dan $wp_query
ke kondisi awal menggunakan fungsi wp_reset_postdata()
sebelum melakukan tindakan selanjutnya.