Baru-baru ini kami menunjukkan kepada Anda bagaimana membatasi hasil pencarian untuk jenis posting tertentu di WordPress. Sekarang kita akan menunjukkan bagaimana Anda bisa membuat form pencarian yang berbeda / banyak sama sekali. Dengan cara ini setiap form bisa dibatasi untuk mencari jenis postingan tertentu. Meskipun hal ini tidak terlalu sulit, Anda akan memerlukan pemahaman dasar tentang template WordPress.
Pertama, Anda memerlukan beberapa formulir pencarian. Tempatkan kode berikut di manapun Anda inginkan berada di blog Anda:
Untuk menentukan jenis pencarian apa yang akan dilakukan form ini, cukup ubah nilai bidang tersembunyi. Sekarang ini diatur ke “normal” tapi bisa apa saja yang Anda inginkan. Selanjutnya, kita perlu memodifikasi file search.php. Bukalah dan ganti semua yang ada di dalamnya dengan kode ini (salin kode yang ada ke clipboard Anda terlebih dahulu, Anda akan memerlukannya sebentar lagi):
Jadi kita akan mengasumsikan bahwa Anda memiliki dua formulir pencarian, normal dan buku. Kode ini hanya mengalihkan pencarian ke file php yang menangani query tertentu. Sekarang kita hanya perlu membuat file-file itu. Jadi, maju dan buat file pencarian-cari.php dan buku-file.php biasa (ganti saja “normal” dan “buku” dengan nilai berapa pun yang Anda gunakan).
Sekarang, di normal-search.php copy dan paste kode berikut ini:
$ args = array ('post_type' => 'post'); $ args = array_merge ($ args, $ wp_query-> query); query_posts ($ args);
Segera setelah ini tempel kode loop dari clipboard yang Anda salin dari file search.php. Bersama-sama, kode ini hanya akan mencari posting blog biasa Anda. Sekarang, di file buku-search.php tambahkan sedikit kode ini dan sekali lagi tempelkan loop tepat setelah itu:
$ args = array ('post_type' => 'books'); $ args = array_merge ($ args, $ wp_query-> query); query_posts ($ args);
Ini akan menyebabkan WordPress mencari hanya untuk custom post type “books”. Anda dapat mengulangi proses ini untuk sebanyak mungkin formulir pencarian yang Anda inginkan.