WordPress’de RSS İçerisinde Belli Kategorileri Gizlemek

Çoğumuz mail yoluyla bloglarımıza abone olan takipçilerimizi bilgilendirmek için, RSS üzerinden veri çeken sistemler kullanmaktayız. Kullandığımız bu sistemler, blogumuzun RSS adresinde ki içeriği kontrol ederler ve yeni eklenmiş içerikleri takipçilerimize mail olarak gönderirler.

Normal şartlar altında blogumuza eklediğimiz tüm içerikler RSS içerisinde yer alır ancak bazı durumlarda sizde benim gibi bazı kategorilere eklediğiniz içeriklerin RSS içerisinde yer alıp, takipçilerinize gönderilmesini istemeyebilirsiniz. Özellikle de gereksiz veya özel kategorilere eklediğiniz yazıların, takipçilerinize mail olarak gitmesini istemeyebilirsiniz. Örneğin, ben sitemde tanıtım yazılarının ve oyunlarla ilgili paylaşımlarımın RSS içerisinde yer almasını istemiyorum, nedeni ise mail yolu ile beni takip eden çoğu kişinin beni takip etme amacı daha çok; SEO, webmaster dünyası ve kişisel konularda yazdığım konulara ait içerikler olduğu için. Bende bu kategoriler haricinde ki yazılar ile takipçilerimi rahatsız etmek ve takipçi kaybetmek istemiyorum.REKLAM

Bu ihtiyaç sonrasında ise RSS içerisinde belli kategorileri gizlemek (kaldırmak) amaçlı bir araştırma yaptım, yaptığım araştırma sonucu birçok eklenti buldum ancak böyle basit bir olayı eklenti yerine kodla halletmek blogumuza daha az yük oluşturacağı için bende çalışan bir kod buldum. Aslında piyasa da benzer yapıda birkaç kod var ancak WordPress’in güncel sürümü ile çalışan bir tek bu koda ulaşabildim.

function rssKategoriGizle($query) {
    if ($query->is_feed) {
        $query->set('cat','-1, -2, -3'); // Kategori ID'lerini değiştirmeyi unutmayın!
    }
return $query;
}
add_filter('pre_get_posts','rssKategoriGizle');

Öncelikle kodu kullandığınız temanın functions.php dosyasına eklemeniz gerekiyor. Bunun için yönetim panelinizden Görünüm > Düzenleyici yolunu izleyebilir ve açılan sayfanın sağında bulunan listeden functions.php dosyasını seçebilirsiniz. Dosyayı seçtikten sonra açılan sayfada, yukarıda verdiğim kodu uygun bir yere yapıştırınız.

Daha sonra da kod içerisinde yorum satırı ile de belirttiğim gibi, kodun içerisinde ki kategori ID’lerinin yer aldığı kısmı düzenlemelisiniz. Yazacağınız kategori ID’lerinin başında ise “-” işareti olmalıdır. Kodun içerisine örnek olarak 1, 2 ve 3 ID’li kategorilerin RSS içerisinden gizlenmesini gerçekleştirdim. 1, 2, 3 yazan kısımlara tek bir kategori ID’si yazabileceğiniz gibi çok daha fazla kategori ID’si de yazabilirsiniz.

Eğer kategori ID’sini nasıl öğreneceğinizi bilmiyorsanız, burada ki yazımdan bu konu hakkında detaylı bilgi edinebilirsiniz.

WordPress Mail Gönderme Sorunu ve SMTP Ayarları

Çoğu sunucu firması ne yazık ki güvenlik gerekçesi ile mail gönderimini engellemiş oluyorlar. Dolayısıyla blogunuz üzerinde bulunan hiçbir form (iletişim,sipariş vs.) veya wordpressin kendi özellikleri (parola sıfırlama, yorum uyerısı vs.) çalışmıyor. Özellikle de merdiven altı host firmalarında karşılaşılan bu durum sonucunda sorunu bulmak bazen blog sahiplerini çıldırtacak hale geliyor. Yeni projelerim için aldığım bir hostta karşılaştığım bu durum için bir çözüm araştırması yaptım ve çözümü de sizlerle paylaşmaya karar verdim.

Öncelikle arkadaşlar blogumuza aşağıda ki eklentiyi kuruyoruz.REKLAM

wp-mail-smtp

Eklentiyi kurduktan sonra etkinleştirip, ayarlar > email sekmesinden eklentinin ayar sayfasına ulaşıyoruz. Karşınıza aşağıda ki gibi bir sayfa çıkmış olması lazım.

wp-mail-smtp-ayarlar

From Email: Bu kısma mailin kimden geldiğinin görülmesini istiyorsanız o adresi yazmalısınız. Mesela destek@google.com.tr bile yazabilirsiniz. Mailin gittiği kişi, mailleri buraya yazdığınız adresten gelmiş gibi görecek.

From Name: Bu kısma ise mailin gittiği kişide gözükmesini istediğiniz ismi yazınız.

Mailer: Bu kısımda kesinlikle “Send all WordPress emails via SMTP.” seçeneğini seçmelisiniz aksi taktirde bu eklentiye gerek kalmazdı.

Return Path: Bunun ayarı size kalmış, ister aktif edin isterseniz etmeyin.

SMTP Host: Bu kısma SMTP host adresinizi yazınız. Muhtemelen bu adres mail.siteadiniz.com şeklindedir. İsterseniz SMTP host olarak gmail, yahoo, outlook veya yandex gibi servisleri de kullanabilir ve sunucunuza mail trafiği yaşatmamış olursunuz.

SMTP Port: Buraya SMTP adresinizin port değerini yazınız. Gmail, yahoo, outlook ve yandex bilgilerini yazının sonunda bulabilirsiniz.

Encryption: Bu kısımda kullandığınız SMTP sağlayıcısına göre SSL veya TLS seçeneklerinden birini seçeceksiniz.

Authentication: Bu seçeneği “Yes: Use SMTP authentication.” yapınız.

Username ve Password: Bu kısımlara hangi SMTP sağlayıcısını kullanıyorsanız ona ait mail adresi ve şifresini yazınız. Örneğin ben SMTP host olarak kendi adresim mail.burakisci.com servisini kullanacaksam bu kısımlara da oluşturduğum mail adreslerinden (smtp@burakisci.com, 123456 gibi) birini yazmalıyım. SMTP host olarak gmail, outlook gibi servisler kullanacaksanız, o hizmetlere ait mail adresleri ve şifrelerinizi yazmalısınız.

Bu değerleri yerlerine yazdıktan sonra değişiklikleri kaydedebilirsiniz. Daha sonra değerlerin doğru olup olmadığını yani mail sisteminin çalışıp çalışmadığını kontrol etmek için “Send a Test Email” kısmından istediğiniz bir mail adresine deneme maili gönderebilirsiniz.

Gmail, Yahoo, Outlook ve Yandex SMTP Bilgileri

SMTP Host: smtp.google.com
SMTP Port: 465
Encryption: SSL

SMTP Host: smtp.mail.yahoo.com
SMTP Port: 465
Encryption: SSL

SMTP Host: smtp-mail.outlook.com
SMTP Port: 587
Encryption: TLS

SMTP Host: smtp.live.com
SMTP Port: 587
Encryption: TLS

SMTP Host: smtp.yandex.com.tr
SMTP Port: 465
Encryption: SSL

Gmail, Yahoo, Outlook ve Yandex gibi servisleri SMTP Host olarak kullanabilmek için hesaplarınızdan bazı ayarlamalar yapmanız gerekmektedir. Bunları da bir sonra ki yazım da sizlerle paylaşacağım.

WordPress Anasayfa ve Arka Sayfalarda Ayrı Tasarım Kullanmak

Merhaba arkadaşlar özellikle de WordPress tema geliştiricilerinin işlerine kesinlikle yarayacak bir konu sizlerle paylaşacağım. Özellikle de arkadaşlar portal temalarında fark etmişsinizdir anasayfada gelişmiş, birçok içeriğin listelendiği bir yapı vardır ancak anasayfanın altından ikinci sayfaya geçmek istediğinizde ise sizlere daha sade bir yapıyla içerikler listelenir. Burada tam olarak anlatmak istediğim şu;

http://burakisci.com/

Birde hemen ikinci sayfaya bakalım,

http://burakisci.com/page/2

Gördüğünüz gibi ikinci sayfaya geçtiğimizde tasarım değişti, çünkü arka sayfalar da anasayfada ki gibi gelişmiş bir sayfa yapısını kullanmaya gerek yoktur sadece içeriği göstermeniz yeterlidir. Bu özellik dediğim gibi genellikle portal temalarında işe yaramaktadır.

Şimdi gelelim bu yöntemi nasıl uygulayacağımıza.

Öncelikle arkadaşlar index.php’de ki kod yapımızı aşağıda ki gibi yapıyoruz;

1234567891011<?php get_header(); ?><?phpif ( $paged < 2 ) { include 'anasayfa.php';} elseif ( $paged > 1 ) { include 'arkasayfalar.php';} else {}?><?php get_sidebar(); ?><?php get_footer(); ?>

Kodlar da gördüğünüz şekilde iki tane .php dosyası yer alıyor. Öncelikle bir tane anasayfa.php dosyası oluşturuyoruz ve bu dosyaya anasayfada göstermek istediğimiz yapıya ait kodları ekliyoruz. Diğer bir dosyamız olan arkasayfalar.php dosyasına ise, arka sayfalarda göstermek istediğimiz yapının kodlarını ekliyoruz.

WordPress giriş seviye güvenlik önlemleri

Güzel bir uykudan kalktığınızda, içerik eklemek için veya kontrol amacıyla blogunuza girdiğinizde blogunuzun ortadan gittiğini düşünün. Çok korkunç olurdu değil mi? Blogunuzun hosting sağlayıcısı hacklendi ya da içeriklerinizin bir kısmı yanlışlıkla silindi, bu durumda ne yapardınız? Böyle durumlara hazırlıklı mısınız? Eğer öncesinden güvenlik önlemlerinizi aldıysanız sorun etmenize gerek yok, aksi taktirde şansınızın büyük olması lazım.

Wordpress Güvenlik

Hepimiz internette sürekli birileri ile görüşüyoruz, bazen de tartışmalar çıkıyor. Ülkemizde ne yazık ki öyle bir gruplar var ki birisiyle tartışınca ya da ondan istediğini alamayınca hemen onun bloguna zarar vermeye çalışıyorlar. Bu yüzden internet üzerinde görüştüğümüz kişilere dikkat etmeliyiz. Diğer yandan da ülkemizde ki çoğu hosting firmasının durumu orta da. Sürekli kesintiler, bağlantı sorunları, güvenlik açıkları… Aralarından yalnızda birkaç tane kaliteli firma sayabiliriz, diğer firmaları kullanan arkadaşlar ise sürekli bir tehlike içerisindeler, bloglarına ne zaman ne olacakları belli olmaz. Bu yüzden önlemlerimizi önceden almalıyız.

WordPress Güvenliği. Önlemek, Düzeltmekten İyidir!

İlk yapmanız gereken aslında blogunuza yapılabilecek her türlü hack girişimine karşı özellikle gerekli bazı dosya izinlerini ayarlamanız gerekiyor. Eğer kötü niyetli saldırıları nasıl önleyebileceğiniz konusunda bir fikriniz yoksa, size bilinen güvenlik açıklarını giderebilecek ve gelecekte ki saldırıları önleyerek blogunuzu daha güvenli hale getirecek birkaç eklentiden bahsedeyim.

  1. BulletProof Security Bu eklenti blogunuzu XSS, RFI, CRLF, Base64, kod enjeksiyon ve SQL enjeksiyon gibi çeşitli hack girişimlerine karşı blogunuzu korur. Acemi kullanıcılar için en iyi güvenliği sağlayacaktır.
  2. Theme Authenticity Checker Hemen hemen tüm hack girişimleri tema dosyalarına kötü niyetli kodlar eklenerek yapılır. Bu eklenti ise temanıza kötü niyetli kodlar eklenip eklenmediği konusunda denetimler yapar, kötü niyetli bir kod bulduğu zaman size raporlama yapar.
  3. AskApache Password Protect Çok iyi olduğunu düşündüğüm bir eklentidir. Eklenti kısaca şu işi yapar. Biliyorsunuz ki değiştirilme yapılmadıysa tüm WordPress sitelerin yönetici giriş paneli /wp-admin dizinindedir. Hack girişiminde bulunanlar bazen bu sayfadan şifrelerinizi deneme yanılma yolu ile ele geçirmeye çalışırlar. Bu eklenti ise /wp-admin dizinine ulaşabilmeniz için sizden ek bir şifre istiyor.

Kendinizi Her Zaman En Kötüsüne Hazırlayın

Aldığınız tüm önlemlere rağmen blogunuz yine de hacklenebilir, ancak blogunuz zevk için blog hackleyen kişiler yerine daha profesyonel kişiler tarafından hacklenecektir. Büyük ihtimal hacker sitenizi hacklemesi ile beraber tüm içeriğinizi de silecektir. Peki ya böyle bir duruma hazır mısınız?

Böyle durumlara hazır olmak için belirli aralıklarla blogunuzun yedeklerini almalısınız. Her zaman manuel olarak alınan yedekler daha iyidir ancak her zaman manuel olarak yedek alacak kadar vaktiniz yoksa bu işi sizler için otomatik olarak yapacak birkaç eklenti mevcut.

  1. WordPress Backup to Dropbox Dropbox hesabı olan her kişinin rahatlıkla kullanabileceği bir eklentidir. Eklentinin kullanımı için sadece yedekleme zamanlarını belirliyorsunuz, gerisini ise eklenti kendisi hallediyor. Yedekleri ise Dropbox hesabınızda sizler için saklıyor.
  2. XCloner Bu eklenti ile dosyalar, klasörler ve WordPress veritabanı yedekleme ve geri yükleme işlemlerini yapabilirsiniz. Sizin yerinize otomatik olarak yedeklerinizi alır. Öne çıkan özelliği ise tüm yedekleri tek bir dosyaya sıkıştırabilmesidir. Kötü olan özelliği ise yedekleri sizin sunucunuza yüklediği için kapasite sorunu oluşturabilir.

Yukarıda arkadaşlar sizlere bazı önerilerde bulundum. Eklentilerin kullanımları hakkında onları daha önce kullanmadığım için bilgim bulunmamaktadır.

Bazı Kategorilerde ki Yazıları Anasayfada Gizlemek

Çoğu arkadaşımız bazı kategorilere ekledikleri yazıları anasayfalarında göstermek istemeyebiliyorlar. Örneğin şuan da kullandığın temada sidebar kısmında son dinlediklerim ve son izlediklerim kategorilerine ait yazıları gösterirken, aynı yazıları anasayfa da göstermem saçmalık olurdu ya da bazı arkadaşlarımız sitelerine ekledikleri tanıtım yazılarını veya hit amaçlı makaleleri anasayfaların da göstermek istemeyebiliyorlar. İşte tüm bu durumlara çözüm getirecek bir yöntem paylaşacağım sizlerle.

Daha önceki yazılarda da belirttiğim gibi, bu tip konularda eklenti kullanmaktan kaçınıyorum. Hemen hemen tüm işlemlerimi kodlar ile halletmeye çalışıyorum çünkü eklentiler gereksiz yere sistemi yoruyorlar. İşte bazı kategorilerde göstermek istemediğimiz yazıları da functions.php dosyamıza ekleyeceğimiz birkaç satır kod ile, anasayfadan gizleyeceğiz.

Öncelikle arkadaşlar functions.php dosyamızı açıyoruz ve <?php ?> etiketleri arasına aşağıda ki kodları ekliyoruz. Kodlarda ki “-1123”, “-1181” gibi değerlerin yerlerine ansayfada yazılarını gizlemek istediğiniz kategorilerin ID numaralarını yazmanız gerekiyor. Kodda ki örneğe göre istediğiniz kadar değer girebilirsiniz.

function burakisciKAT($query) {if ($query->is_home) {if (!$query->get('cat'))  {$query->set('cat','-1123,-1181');}}return $query;}add_filter('pre_get_posts','burakisciKAT');

WordPress Otomatik Öne Çıkarılmış Görsel Belirlemek

Genellikle portal, program indirme veya film izleme sitelerinde kullanılan; sizi büyük bir uğraştan kurtaran bir kodu sizlerle paylaşacağım.

Öncelikle arkadaşlar vereceğim kod ne işe yarıyor ondan bahsedeyim. Aşağıda ki kod sizi öne çıkarılmış görsel ekleme zorunluluğundan kurtarıyor, onun yerine yazıya eklediğiniz ilk resmi otomatik olarak öne çıkarılmış görsel olarak algılıyor.

Doğal olarak bu kodun bizim gibi blog sitelerinde kullanılması pek gerekli değil ancak günde onlarca yazı eklenen teknoloji, film vs. gibi sitelerde bu kod gerçekten kullanıcılara büyük bir zaman tasarrufu yaptırıyor. 

Oldukça basit şekilde kullanılabilen kodumuz hakkınızda aklınız da şöyle bir soru oluşmuş olabilir: “Peki ya yazıya resim eklemezsem ne öne çıkarılmış görsel olarak ne gösterilecek?“. Bu sorunun da cevabı aslında verdiğim kodda ki fonksiyonda gizlidir. Eğer yazınıza resim eklemediyseniz, wordpress öne çıkarılmış görsel olarak vereceğim kodda ayarlayacağınız resmi gösterecektir.

Kodumuz;

1234567891011121314151617181920function autoset_featured() {global $post;$already_has_thumb = has_post_thumbnail($post->ID);if (!$already_has_thumb)  {$attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" );if ($attached_image) {foreach ($attached_image as $attachment_id => $attachment) {set_post_thumbnail($post->ID, $attachment_id);}} else {set_post_thumbnail($post->ID, '414');}}//end functionadd_action('the_post', 'autoset_featured');add_action('save_post', 'autoset_featured');add_action('draft_to_publish', 'autoset_featured');add_action('new_to_publish', 'autoset_featured');add_action('pending_to_publish', 'autoset_featured');add_action('future_to_publish', 'autoset_featured');

Verdiğim kodu functions.php dosyasında uygun gördüğünüz bir yere ekleyin. Varsayılan öne çıkarılmış görseli değiştirmek için “414” değeri yerine, belirlediğiniz resmin ID numarasını yazın.

WordPress Yorum Onay Bildirgeci Eklentisi

Birçok takipçimin sorduğu bir soru üzerinde bu eklentiyi sizlerle paylaşmak istedim. Gelen sorularda ise, siteme yaptıkları yorumlar onaylanınca kendilerine gelen teşekkür mailini nasıl gönderdiğim soruluyordu.

Yakup Gövler‘in hazırladığı ve bizlerle ücretsiz olarak paylaştığı WordPress Yorum Onay Bildirgeci Eklentisi sayesinde artık sitenize yorum yapan birinin yorumunu onayladığınızda o kişiye otomatik olarak bir teşekkür maili göndereceksiniz. Bu sayede yorum yaptığı için teşekkür alan ziyaretçinin blogunuza karşı olan ilgisi artıyor, diğer yandan da teşekkür mailinde ziyaretçinin yaptığı yorumun linki de yer aldığından ziyaretçilerin sitenizi tekrar ziyaret etme oranı artıyor.REKLAM

Size yorum yapan bir ziyaretçinin yorumunu onayladığınızda ona gidecek mail aşağıda ki gibi olacaktır.

wyob

Eklentiyi aşağıda ki butona tıklayarak indirebilirsiniz, eklentiyi indirdikten sonra kurup aktif etmeniz yeterli olacaktır. Başka hiçbir işlem yapmanıza gerek yoktur. Eklentinin çalışıp çalışmadığını kendi mail adresinizi kullanarak sitenize bir yorum yazıp, o yorumu onaylayarak anlayabilirsiniz.