İleti�Ÿim

WordPresste Bazı Kategorileri Üyelere Özel Yapmak

Bildiğiniz gibi gün geçtikçe wp’nin kullanım alanları artıyor ve yeni ihtiyaçlar ortaya çıkıyor. Şimdi bu ipucuyla, bir kategoriye ait yazıları, üye olmayanlardan gizleme yolunu öğreneceksiniz.

WordPress’in güzel fonksiyonlarından olan, is_user_logged_in fonksiyonu ve in_category fonksiyonunu kullanacağız.

is_user_logged_in fonksiyonu ile kullanıcının üye mi yoksa ziyaretçi mi olduğunu kontrol edeceğiz.

in_category ile gizlenmesini istediğimiz kategori içerisindeki bir yazı olup olmadığını kontrol edeceğiz.

Yapılacak İşlemler

  1. Temanız içerisindeki functions.php dosyasını açınız.
  2. İçerisine aşağıdaki kodları ekleyiniz:
    function kategori_sinirlayici($content){
    $fix = "3,5,7";
    if(in_category($fix)){
    if ( !is_user_logged_in() ) {
    return "<p class='uyari'>Bu kategoriye ait yazıları okumak için <a href='".get_bloginfo('url')."/wp-login.php'>giriş yapmalısınız</a>.</p>";
    } else {
    return $content;
    }
    } else {
    return $content;
    }
    }
    add_filter('the_content', 'kategori_sinirlayici');
    
  3. Dosyayı kaydedin ve kapatın.

Yukarıdaki kodlarda görmüş olduğunuz, fix=”3,5,7″ kısmındaki, 3,5,7 sayıları kategori id’lerini temsil etmektedir. Eğer kategori id’leriniz 33,156,84 ise, bunları silip yerine size ait idleri yazmanız gereklidir.

Bu işlemleri yaptıktan sonra belirlediğiniz kategorilerde, “Bu kategoriye ait yazıları okumak için giriş yapmalısınız.” yazısı görülecek, diğer yazılarınız ise normal şekilde gösterilecektir icon wink WordPresste Bazı Kategorileri Üyelere Özel Yapmak

Düzenlemeler:

  1. 30.06.2009 – CSS ile düzenlemek için p tagı ve uyari sınıfı eklendi.
  2. 01.07.2009 – Üye Giriş Linki eklendi.

Benzer Yazilar


“WordPresste Bazı Kategorileri Üyelere Özel Yapmak” için 38 Yorum var

  1. oguz diyor ki:

    peki bu kategorideki yorumları nasıl gizleyebiliriz? son yorumlarda gözükmesin mesala??

  2. kean diyor ki:

    merhaba hocam bende bir kate goriyi uyeler görebilsin istiyorum sizin verdiğiniz kodu koydum ama çalışmıyor yardımcı olurmusunuz teşekkür ederim

  3. sineman diyor ki:

    merhabalar ben wordpress sitemde kategoriye uyarı sayfası eklemek istiyorum, yani o kategoriye ait bir yazı acılmak istendiginde once bir uyarı sayfası cıkmasını saglayabilirmiyiz?

  4. photoders diyor ki:

    denedim fakat olmadı şu an 2.9.1 sürüm kullanıyorum bana çok gerekli acaba bu konuda yardım alabilirmiyim.

  5. dea diyor ki:

    Güncelleme ne durumda acaba?

  6. dea diyor ki:

    Çok işime yarayacak birşey teşekkürler fakat wordpressin son sürümü için uygun değil sanırım. Bir işe yaramadı. Yardımcı olur musunuz?

  7. raozkardes diyor ki:

    Teşekkür ediyorum. Sabırsızlıkla bekleyeceğim. İşlerinizde kolaylıklar diliyorum.

  8. raozkardes diyor ki:

    Bugün 2.7.1 ile de 1 den fazla kategoride sorun olduğunu farkettim. Bunun bir çözümünü bulabilirseniz çok memnun olacağız.

    Amatörce yürüttüğümüz okul sitemizin sürekliliği için bu kod oldukça işlevsel bir yere sahip.

  9. mesut diyor ki:

    $fix = “3,5,7″; burada ki kategori adeti 1 taneyi geçince sorun veriyor. Yani iki veya daha fazla kategori ekleyemiyorum. yardımcı olur musun

  10. NeaturaLizeR diyor ki:

    Kusura Bakma Hocam Flood Yapıorum Ama Herhangi Bi Eklenti Ekleyecekmiyiz Yada functions.php Dosyasının Neresine Ekleyeceğiz? http://rapidshare.com/files/259025368/functions.php.html Dosyamı Verdim Yardımcı Olurmusun?

  11. NeaturaLizeR diyor ki:

    Hocam Ekledim En Aşağıya Verdiğin Kodu Localhostta Açtım Deişen Bişey Yok Gene Aynı?

  12. JoSePh diyor ki:

    hocam ihtiyacım için bu bilgilendirmeyi yapmana çok sevindim ama küçük bi maruzatım vardı başlıklarla birlikte tamamen gizleyebilsek nasıl olurdu, ben biraz uğraştım ama o şekle getiremedim

  13. raozkardes diyor ki:

    Return içerisindeki mesaja css atanabilir mi? nasıl yapacağız?
    diğer gereksiz yorumlarımı kaldırır mısınız? sonuçta benden kaynaklanan bir yanlışlık oldu.
    bu işlevsel kodlar için teşekkür ediyorum. şu son kod inanın çok işimize yarayacak.

  14. raozkardes diyor ki:

    Eee vallahi şimdi oldu. teşekkürler.

  15. raozkardes diyor ki:

    Else ve return kodlarıyla oynayınca oluyor ama tam anlamış değilim.

  16. raozkardes diyor ki:

    Semih bey, kodu az önce sitemizde denedik. 8 ve 11 nolu kategorileri ilgili yerlere girdim. ne yazık ki çalışmadı. değişen bir şey yok.

    wp 2.7.1 sürüm kullanmaktayız.

  17. Mehmet diyor ki:

    Teşekkürler semih bey.

  18. Semih diyor ki:

    üye girişi yapmış olmayasınız? :)

  19. Semih diyor ki:

    Şu kısımı:
    return "Bu kategoriye ait yazıları okumak için giriş yapmalısınız.";
    şu şekilde yaparsanız:
    return "<p class='test'>Bu kategoriye ait yazıları okumak için giriş yapmalısınız.</p>";
    css içerisinde:
    .test{
    background:#000;
    }

    şeklinde bir düzenleme yapabilirsiniz :)

  20. Semih diyor ki:

    onu yapmak için sıfırdan query düzenlemek ve o yazıları sorgudan çıkarmak. ayrıca yeni bir category dosyası oluşturup, onun içinde düzenleme yapmak gerekli :)

  21. JoSePh diyor ki:

    hmm baya uzun işi varmış, ben conntent kodunun dan geldiğini düşünmüştüm ve onu ile değiştirirsem düz mantık olur diye hesaplamıştm ama olmadı :D

  22. raozkardes diyor ki:

    uyarı mesajı içine wp-login giriiş kodunu da eklemek istiyorum. Mesaj içinde wp nin login kodu çalışmadı ama.. yani giriş yapmalısınız yazısında link olmalı ama nasıl?

  23. Semih diyor ki:

    Yazıyı ve kodu güncelledim :)

  24. İsminiz diyor ki:

    güncelleme için teşekkürler ama get_bloginfo kodu giriş linkine gitmiyor.

  25. raozkardes diyor ki:

    .site_url(’wp-login.php’). böyle yapınca oldu .. doğrudur umarım. denemeyle buldum da.

  26. Semih diyor ki:

    Böyle bir kullanım hiç görmedim :) Yukarıdaki kodu güncelledim bu arada :)

  27. Semih diyor ki:

    Çıkış yapmayı unutmadınız umarım?

  28. Semih diyor ki:

    Buradaki kodları deneyin: http://wpuzmani.pastebin.com/m349875b4
    Ayrıca $fix karşısında yazan numaralar kategori id’leri olacak ;)

  29. NeaturaLizeR diyor ki:

    Yok Hocam Gene Aynı Yaa Deişen Bişey Yok Idlerini Yazdım Katagorilerin Zaten Üye Girişi Yapıorum Gene Olmuor Var Bişiler Bunda Yaa Seodan Kaynaklanır Dedim Seoyu İptal Ettim Gene Aynı

  30. Semih diyor ki:

    Bu da enteresan tabi :) diğer arkadaşlarda çalışırken siz de hata vermesi normal değil…

  31. Semih diyor ki:

    3.satırı şu şekilde düzenleyip, yeniden deneyin:
    [php]
    if(in_category(array($fix))){
    [/php]

  32. mesut diyor ki:

    malesef olmadı. temadan kaynaklanır diye düşündüm 2 – 3 temadan denedim ama sonuç aynı

  33. Semih diyor ki:

    Sanırım sürümlerden kaynaklı, çünkü 2.7de çalıştığını görmüştüm :) Yoksa eklemem biliyorsunuz… ;)

  34. semih diyor ki:

    Tekrar incelemem gerekiyor, şimdilik kullanmazsanız iyi olur… En kısa zamanda bakacağım.

Kendimi Şanslı Hissediyorum

Şansını denemek istiyorsan, yukarıya tıkla :)

WordPress Hosting

Duyuru

WP Uzmanı yeni yazarlarını arıyor. WPU üzerinden eklenti ve tema satışı yapabilirsiniz! Tek yapmanız gereken iletişime geçmek.

İletişime geç!


Selen Korkutan

website statistics