1
2013
Besleme ve Aramalardan Bazı Kategorilerin Yazılarını Gizleme
WordPress sitelerimizde aramalarda ya da RSS beslemelerimizde tüm kategorilerin yazıları gösterilir. Ancak sitemizdeki bazı kategorileri farklı amaçlar için kullandığımızda ve bunların besleme ve aramalarda görünmesini istemediğimiz zamanlar olabilir.
Önceki yazılarımda Ana sayfada bazı kategorilerin yazılarını gizlemeyi anlatmıştım. Aramalarda da kategorinin yazılarını gizlemek için benzer kodları kullanacağız. Aşağıdaki kodları temanızın functions.php dosyasına kendinize göre değiştirip, ekleyiniz.
function yakuphoca_kategorinin_yazilarini_aramalardan_gizle($query) { if ( $query->is_main_query() && $query->is_search ) { $query->set('cat', '-5, -27'); } return $query; } add_filter('pre_get_posts', 'yakuphoca_kategorinin_yazilarini_aramalardan_gizle');
Kategorinin Yazılarını RSS Beslemelerde Gizlemek
Aslında kodumuz yukarıdaki ile aynı sadece is_search yerine is_feed yazıp, kullanacağız.
function yakuphoca_kategorinin_yazilarini_beslemelerde_gizle($query) { if ( $query->is_main_query() && $query->is_feed ) { $query->set('cat', '-5, -27'); } return $query; } add_filter('pre_get_posts', 'yakuphoca_kategorinin_yazilarini_beslemelerde_gizle');
Kategorinin Yazılarını Ana Sayfada, Aramalarda ve Beslemelerde Gizlemek
Eğer istediğiniz kategorilerinizi her yerde gizlemek ise bu durumda aşağıdaki kod, hem yukarıdakilerin hem de önceki yazımdaki kodun birleşimi olacaktır.
function yakuphoca_kategorinin_yazilarini_heryerde_gizle($query) { if ( $query->is_main_query()) if ( $query->is_home || $query->is_feed || $query->is_search ) { $query->set('cat', '-5, -27'); } return $query; } add_filter('pre_get_posts', 'yakuphoca_kategorinin_yazilarini_heryerde_gizle');
Yukarıdaki kodlarda geçen 5 ve 27 sayıları gizlemek istediğiniz kategorilerin ID'lerini ifade etmektedir. Daha fazla kategoriyi, benzer şekilde ekleyerek gizleyebilirsiniz.
Gerçekten işimi yaradı, çok teşekkürler :)