• 12-09-2012, 00:28:36
    #1
    Sidebar'a eklenen reklam kodu, tüm sayfalarda görünmesini istemiyorum. Istemediğim sayfalarda reklamlar çıkmasın. Misal tag.php

    Altyapı wordpress'tir.

    Daha önce böyle birşey uygulayan var mı acaba, veya napılabilir.
  • 12-09-2012, 00:47:08
    #2
    Üyeliği durduruldu
    sidebar.php dosyasına ekleyin.
    <?php
        $allowed = array(1,3,5,7,9); // sayfa yada konu idleri.
        if(in_array($post->ID, $allowed)):
    ?>
    <!-- reklam kodu buraya -->
        <script type="text/javascript">alert('Hello world');</script>
    <!-- reklam kodu buraya bitiÅŸ -->
    <?php endif; ?>
    1,3,5,7,9 yerine görünmesini istediğin sayfaların idlerini yazıp virgül ile ayırmalısın.
    ---

    Bu da tam tersi mantık, yazdığın sayfa idleri haricindeki sayfalarda reklamların görünür.
    <?php
        $allowed = array(1,3,5,7,9); // sayfa yada konu idleri.
        if(!in_array($post->ID, $allowed)):
    ?>
    <!-- reklam kodu buraya -->
        <script type="text/javascript">alert('Hello world');</script>
    <!-- reklam kodu buraya bitiÅŸ -->
    <?php endif; ?>
  • 12-09-2012, 01:03:13
    #3
    ID mantığı dışındaki sayfalarda nasıl uygulanabilir ?

    Örnek : domain.com/tags/etiket-adi

    Sayfalarında ?
  • 12-09-2012, 01:08:06
    #4
    Üyeliği durduruldu
    Bilmem bi deneme yapayım onun içinde yazarım tekrar.

    Etiketleri engellemek zor olmayacak mı? Sonuçta bir sitede yığınla etiket oluyor. Sanki bu biraz mantıksız gibi geldi ama ne bileyim.
  • 12-09-2012, 01:10:08
    #5
    Teşekkür ederim.
  • 12-09-2012, 01:23:00
    #6
    Üyeliği durduruldu
    <?php
        // bu fonksiyonu functions.php içerisine eklemelisin.
        function get_tag_id_by_name($tag_name) {
            global $wpdb;
            $tag_ID = $wpdb->get_var("SELECT * FROM ".$wpdb->terms." WHERE  `name` =  '".$tag_name."'");
            return $tag_ID;
        }
    ?> 
    
    
    <?php
        $allowed_posts = array(1,2,3,4,5); // sayfa yada konu idleri.
        $allowed_terms = array(1,2,3,4,5); // etiket idleri (etiket adına görede olabilir ama şu an idye göre yaptım, id yazmak daha kolay olabilir diye)
    
        $term = single_tag_title(null, false);
        $term_id = get_tag_id_by_name($term);
    
        if(in_array($post->ID, $allowed_posts) || in_array($term_id, $allowed_terms)):
    ?>
    <!-- reklam kodu buraya -->
        <script type="text/javascript">alert('Hello world');</script>
    <!-- reklam kodu buraya bitiÅŸ -->
    <?php endif; ?>
    deneme yapmadım ama tamam sanırım.
  • 12-09-2012, 01:25:57
    #7
    Tesekkurler bu sorunumu cozdu.
  • 12-09-2012, 01:49:58
    #8
    Bu şekilde ID bolluğu yaşanır sanırım.. Yani her etiket için ayrı bir id mi girmeniz gerekecek anlamadım ama şöyle bir şey önerebilirim:

    <?php
    	if(strpos($_SERVER['REQUEST_URI'],'ETİKET SAYFASININ ADRESİNDEN BİR PARÇA') === false){
    		echo 'reklam kodları';
    	}
    ?>

    ETİKET SAYFASININ ADRESİNDEN BİR PARÇA yazan yere kalıcı bağlantı ayarlarında etiket için ne yazdıysanız, onu girebilirsiniz. Sitenizde kalıcı bağlantı yoksa "tag" yazın sadece..
  • 17-09-2012, 01:26:45
    #9
    Bu daha iyi oldu, teşekkür ederim.