Ana Sayfa » »
Ağu
1
2013

Ana Sayfada Bazı Kategorileri Göstermeme/Gizleme

WordPress sitemizin ana sayfasında sitede yayınlanmış bütün yazılar gösterilir. Ancak bizler bazı kategorileri farklı amaçlar için kullanırız ve bu kategorideki yazıların ana sayfada görünmesini istemeyiz.

Bunu yapmak için aşağıdaki kodu temanızın functions.php dosyasına kendinize göre düzenleyerek eklemeniz yeterli.

function yakuphoca_kategorinin_yazilarini_gizle($query) {
  if ( $query->is_home() ) {
    $query->set('cat', '-5, -27');
  }
  return $query;
}
add_filter('pre_get_posts', 'yakuphoca_kategorinin_yazilarini_gizle');

Kod içerisindeki 5 ve 27 sayıları, gizlemek istediğimiz kategorileri ifade eder. Ancak bu kodda şöyle bir durum var, eğer ana sayfanızda sadece yazıları değil, örneğin yan menüde son yorumlanan yazıları ya da popüler yazıları da listeliyorsanız, hala ana sayfada olacağınızdan is_home() fonksiyonu true değerini döndürecek ve o yazı listelerinden de kategorileriniz gizlenecektir.

Eğer bunu istemiyorsanız, yani sadece ana sayfada listelenen yazılardan kategorilerinizi gizlemek istiyorsanız, yukarıdaki kodu aşağıdakiyle değiştirin.

function yakuphoca_kategorinin_yazilarini_gizle($query) {
  if ( $query->is_main_query() && $query->is_home() ) {
    $query->set('cat', '-5, -27');
  }
  return $query;
}
add_filter('pre_get_posts', 'yakuphoca_kategorinin_yazilarini_gizle');

Kod içerisindeki is_main_query() fonksiyonu sadece ana sorgu içerisinden bir istek olmuşsa true değerini döndürür. Böylece yan menüdeki yazı listeleri kodumuzdan etkilenmemiş olacak.

Bu yazımı beğendiyseniz, bu kategoride yer alan WAMP Server'da Sanal Site Oluşturma başlıklı apache, mysql ve wampserver konularında bilgi veren bir önceki yazımı da okumanızı tavsiye ederim.

Yorumunu Yaz

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

Yukarı Çık