Query Posts Filtreleyerek Yazı Çekmek

Query Posts WordPress için farklı filtreler ile yazı çağırmak için kullanılan bir fonksiyondur.

Örneğin anasayfada son 5 yazıyı göstermek için;

query_posts( 'posts_per_page=5' );

The Loop içerisinde kullanmanız yeterlidir. Farklı filtreler için farklı kod yapıları kullanılmaktadır.

query_posts( 'posts_per_page=10' ); 
// Gösterilecek yazı sayısı

query_posts( 'cat=1' ); 
// kategoriye göre yazı göstermek

query_posts( 'category_name=kategori-adi' ); 
// kategoriye göre yazı göstermek

query_posts( 'cat=-1' ); 
// kategori çıkartmak için kullanılan

query_posts( 'tag=etiket' ); 
// etikete göre yazı göstermek

query_posts( 'post_type=fotograflar' ); 
// Özel yazı biçimine göre çağırmak

query_posts( 'p=5' ); 
// ID si 5 olan yazıyı çağırır

query_posts( 'orderby=rand' );
// random-rastgele yazı çeker

query_posts( 'meta_key=ozelalanadi&orderby=meta_value_num' );
// özel alan - custom field alanındaki sayısal veriye göre sıralamak. 

Örnek Loop-Döngü Yapısı



Başlık, içerik, tarih ..vs çekilen yer


Ayrıca query post kullandığınız döngülerin sonrasına örnekte görüldüğü gibi wp_reset_query(); eklemeniz gerekir.
Girilen filtrelerin sıfırlanmasını sağlar aynı sayfada birden fazla döngü eklerseniz birbirini etkilemez.

Query Post u iki farklı biçimde tanımlaybilirsiniz birisi yukarıdaki gibidir. Her filtre sonrasına & ekleyerek toplu query-filtre girebilirsiniz.
İkinci kullanım biçimi de aşağıdaki gibidir.

$args = array(
	'post_type'=> 'movie', // özel yazı biçimi
	'actor'    => 'Bruce Campbell, Chuck Norris', // taxonomy
	'order'    => 'ASC' // sıralama biçimi
);
query_posts( $args );

Array sayesinde satır satır karışıklık olmadan filtreler oluşturabilirsiniz. Eğer filtreniz çok kapsamlıysa bu şekilde kullanmanızı tavsiye ederim.

“Query Posts Filtreleyerek Yazı Çekmek” için 2 yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir