Yazıları Özel Alana Göre Sıralama

guclusat

Tanınmış Üye
Süper Moderatör
WordPress'te yazılarla ilgili istatistiki bilgi tutan eklentilerin çoğu, bu bilgileri yazılara birer özel alan ekleyerek takip ederler. Özellikle okunma sayıları ya da oylama türü eklentilerde bu bilgiler "rating", "popularity" ya da "postview" isimli özel alanlar kullanılır. Bazı site sahipleri yazılarını bu özel alanlardaki değerlere göre sıralamak isteyebiliyorlar. Yazıları böyle sıralamak sandığınızdan da kolay.
Yapmanız gereken sitenizin neresinde sıralama yapacaksanız o tema dosyasını açın. Diyelim ki kategorilere tıklandığında, kategorilerdeki yazıların "rating" isimli özel alana göre sıralanmasını istiyorsunuz. Bunun için temanızın Arşivler (archive.php) dosyasını açın ve dosya içerisindeki aşağıdaki kodu bulun.

PHP:
<?php if (have_posts()) : ?

Bu kodun hemen üstüne aşağıdaki gibi gerekli sıralama kodunu ekleyin.

PHP:
<?php if ( is_category() ) {  query_posts($query_string .'&meta_key=rating&orderby=meta_value'); }?><?php if (have_posts()) : ?>
Kod içerisindeki meta_key=rating ifadesinde geçen rating yerine istediğiniz özel alan adını yazabilirsiniz. Yalnız yöntemin bir eksiği var. Bu özel alana (rating) sahip olmayan yazılar listelenmiyor. Dolayısıyla yöntemi, eğer bütün yazılarınızda, kullandığınız özel alan eklenmişse, kullanın.
 
Geri
Yukarı