WordPress blog sorgularını değiştirin: İstediğiniz yazıları, etiketleri, kategorileri, yazarları gösterin, istemediklerinizi saklayın

Blog yazıyorsanız muhtemelen ihtiyaç duymuşsunuzdur. Bazı yazılarınızı blogunuzda göstermek istemezsiniz. Onları bir referans sayfası olarak arka planda saklamak istersiniz. Ya link verirsiniz yada bir slider bağlar, farklı bir gösterim tarzı ile okurlarınıza sunarsınız.

Bazen de bunun tersi olur. Sadece belirli bir şartı sağlayan (belirli bir etikete sahip olan yada belirli bir yazarın yazdığı vb) yazılar blog sayfanızda görünsün istersiniz. Bunu dışındaki yazılarınız açıkta olsun istemezsiniz.

Gerçek hayattan bir örnek vereyim. Mesela Bilenler Kabilesi için siteye kampanyalar bölümü eklemek istiyordum. Kampanya sonlandığında yazı faydasız hale geleceğinden ana sayfadaki blog düzeninde yer alsın istemiyordum. O yüzden güncel kampanyaları bir slaytta gösterip, diğerlerini ana sayfadan gizlemeye karar vermiştim.

Benim bu basit isteğim, WordPress’te bir tuşa basarak kolayca halledilebilecek bir şey değildi. Ama bilen biri için birkaç satır kodun eklenmesi kadar da kolay birşeydi. Nitekim ben de bu iş için eski kampanyaları bir kategoride topladım ve functions.php dosyasına yazdığım biriki satır PHP kodu ile ana sayfadan sakladım.

Bu kodlar uzman kullanıcılara kolay ama normal bir WordPress blog yazarına kabus gibi gelebiliyor. Hem anlamada hem de kullanımda zorluklar yaşanıyor. Ben de bu yüzden sık karşılaşılan basit istekler için kodları hazırladım ve resimli rehberler ile nasıl kullanılacağını anlattım.

Eğer blog yazılarınızdan bazılarını gizlemek yada sadece yazılarınızın bazılarını göstermek istiyorsanız, bunu kategori/etiket/yazar bazında kontrol edebilmek istiyorsanız, çözüm hap şeklinde hazır. Size düşen tek şey ihtiyacınız olan başlığa tıklamak ve rehberi adım adım takip etmek olacak. Şimdiden kolay gelsin…

Bi saniye, Kodlar nereden geliyor?

Bildiğiniz gibi WordPress açık kaynak kodlu bir topluluk projesi. Kullandığımız temalarda açık kaynak kodlu. Dolayısıyla inceleyip istediğimiz gibi değiştirebiliyoruz.

Esasen kulandığımız kodlar PHP ile yazılmış ama detaylı PHP öğrenmemize gerek olmuyor. Yapmanız için kullanabileceğiniz hazır kod yapıları bizzat WordPress tarafından kullanıcılara sunuluyor. Mesela WordPress’in “WP Query” yani veritabanından hazırladığınız yazı ve sayfaları alarak gösterimini yapan sınıfı WP Query yardım belgesinde detaylıca anlatılıyor. Yeterince vakti olan her kişinin anlatılanları anlayacağına eminim. Fakat ben bu kadar teknik değil de, işin daha çok pratik tarafını anlatmayı tercih ettim.

İstediğini Sakla…
Seçtiğiniz kategoriye, yazara, etikete ait yazılar blogunuzda gösterilmesin. Yazılar silinmeden blog akışınızdan gizlensin.

İstediğini Göster…
Blogunuzda sadece sizin seçtiğiniz kategoriye, yazara, etikete ait yazılar gösterilsin. Diğer yazılar silinmeden saklansın.

Önemli Notlar:

Burada yaptığınız işlemlerin tümünü eklediğiniz kodları silerek geri alabilirsiniz. Ama ben işe girişmeden önce temanızın functions.php dosyasını yedeklemenizi tavsiye ederim. Yaptığınız herhangi bir hata admin paneline girmenize engel olabilir. Bu durumda FTP yada sunucu hizmetini satın aldığınız web sitesinin yönetim panelini kullanarak dosyayı geri yükleyebilirsiniz.

Eğer bir aksilik olusa ve elinizde functions.php dosyasının bir yedeği yoksa, temanızın orjinal function.php dosyasını bulup kullanabilirsiniz. O da yoksa tema klasörünüzü sunucu panelinizden farklı bir isimle yeniden adlandırarak sorunu çözebilirsiniz.

Konuları anlattığım şekilde takip ederseniz ve hata yapmazsanız sorun olmayacaktır. Kodları verdiğim şekilde doğru yazdığınıza muhakkak emin olun. “YAZAR ID” gibi metinleri silip yerlerine gerekli değerleri girmeye dikkat edin. “_” ve “__” karakterlerine dikkat edin. Bazen tek bazen çift alt çizgi kullanılmıştır. Hatalı yazmanız durumunda sorunla karşılaşabilir yada kodlardan fayda görmeyebilirsiniz. Yazıda geçen tüm kodları bu linkten text belgesi olarak indirebilirsiniz.

Yaptığımız tüm işlemlerde konuları, kategorileri, tagları sakladık ama yok etmedik. Burada yaptığımız saklama işlemi güvenlik amaçlı kullanılamaz. Halen arama motorları robot.txt dosyanızdan sayfa adını öğrenebilir, sayfayı indeksleyebilir. WordPress’in dahili aramasında, arama sonuçlarında çıkabilir. Arşiv sayfasında listelenebilir. Güvenlik için başka bir metod tercih etmeniz gerekecektir.

Yazıda bolca blog, blog sayfası, blog akışı dedik ama hiç ana sayfa demedik. WordPress varsayılanda blog akışını anasayfa olarak yayınlar. Eğer değişiklik yapmadıysanız, gizlediğimiz yada gösterdiğimiz yazılar, kategoriler, etiketler vb. ana sayfada geçerli olacaktır. Eğer değişiklik yapıp blog akışını ana sayfanın bir bölümüne gömdüyseniz, sadece o bölümde etkili olacaktır. Ana sayfada blog yazılarına yer vermiyorsanız (ticari sitelerde sıkça rastlanan bir durum) kodlar blog sayfanızda etkili olacaktır.

One Response

  1. Ahmet Baran December 14, 2015

Leave a Reply