• 25-12-2009, 20:33:00
    #1
    Arkadaşlar, yapmak istediğim durumuna göre temanın bazı alanlarının görünmesi ya da görünmemesi. Bunu arama kutusu örneğinde yapabiliyoruz.

    Örneğin eğer arama yapılan sözcük ile ilgili bir sonuç çıkmazsa "bir sonuca ulaşılamamıştır" gibi bir mesaj çıkmasını sağlayabiliyoruz. Ben ise başka bir şey yapmak istiyorum:

    A ve B adında iki yazı türümüzün olduğunu düşünelim. A türündeki yazıları 1. kategoriye, B türündeki yazılarımı ise 2. kategoriye kaydettiğimi varsayın. Örneğin A türündeki yazılar haber yazıları, B türündekiler ise Kitap tanıtım yazıları olsun. A türünde Haberi Yapan, Fotoğrafı Çeken, Haberin Geçtiği Mekan gibi özel alanlarım varken B türünde ise Kitabın Yazarı, Kapak Tasarımcısı, Sayfa Sayısı gibi özel alanlarım olacaktır.

    Bu alanları temamda kodlarken kitabın yazarı : (özel alanlardan ekleyeceğim değer) şeklinde kodlarım. Fakat wordpress aslında tek bir yazı tipi yaratmamızı sağlıyor şu anki durumuyla.

    Benim yapmak istediğim 1 kategoriyi seçtiğimde temamda sadece 1. kategorinin çıkmasına izin verdiğim tanımları (Ona özel tasarladığım ve tanımladığım single.php), 2. kategoriyi seçtiğimde 2. kategorinin çıkmasına izin verdiğim tanımlarının (Ona özel tasarladığım ve tanımladığım single.php) çıkmasıdır.

    Teorik olarak böyle bir şeyin mümkün olduğu kanısındayım. Fakat bunu bir türlü gerçekleştiremedim. Yaptığım küçük çaplı araştırma da işe yaramadı.

    Yardımlarınızı beklemekteyim.

    Aşağıda deneme ama becerememe örnek kodlar mevcuttur:

    <?php if (is_category('3') ):
     // we're in the Plants category, so show a plant ?>
     <img src='/images/plant.png' alt='a plant' />
    <?php } elseif (is_category('4') ):
     // we're in the Flowers category, so show a flower ?>
     <img src='/images/flower.png' alt='a pretty flower' />
    <?php endif; // end the if, no images for other other categories ?>
    <?php if (in_category('6')){ 
    if ( get_post_meta($post->ID, 'Foto', true) ) 
    { echo "Fotoğraf: ".get_post_meta($post->ID, 'Foto', $single = true); } 
    else { echo ""; }} ?>
  • 26-12-2009, 10:58:56
    #2
    Ben hala çözemedim, sanırım çözebilende olmadı..
  • 26-12-2009, 11:03:15
    #3
    <?php if (the_category_ID('')==15) { ?> 
    
    <div class="akategori">
    
    
    </div>
    
    <?php } ?>
    
    <?php if (the_category_ID('')==16) { ?> 
    
    <div class="bkategori">
    
    
    </div>
    
    <?php } ?>
    şeklinde yapabilirsin. Divlerin içine isteğine göre özel alanları yerleştirebilirsin. Denenmiştir, sorunsuz çalışmaktadır.
  • 26-12-2009, 11:19:14
    #4
    Teşekkürler.. Denedim ve oldu..

    Ama toplamda 10 kategorim var veayırmak istediğim kategori ise 1 adet.. Yani kod "x kategorisi değilse" şeklinde olursa daha kolay olur..

    Bunu nasıl yapabiliriz??
  • 26-12-2009, 11:25:34
    #5
    vistadriver adlı üyeden alıntı: mesajı görüntüle
    Teşekkürler.. Denedim ve oldu..

    Ama toplamda 10 kategorim var veayırmak istediğim kategori ise 1 adet.. Yani kod "x kategorisi değilse" şeklinde olursa daha kolay olur..

    Bunu nasıl yapabiliriz??

    <?php if (the_category_ID('')==15) { ?>
    
    <div id="akategorisi">  </div>
    
    <?php }	else { ?>
    
    <div id="digerkategoriler">  </div>
    
    <?php } ?>
  • 26-12-2009, 11:42:25
    #6
    Çok teşekkür ederim yardımın için.. =)