Yazı içine reklam eklemek…

Yazılarımızdan önce veya sonra reklam ekleyebiliyoruz. Bunu yapan eklentiler ve fonksiyonları da kullanabiliyoruz. Ama uzun yazı yazıyorsak bu yazıların arasına da reklam eklemek istiyorsak ne olacak? Bu sorun aslında çok basit bir şekilde çözülebilir. Size lazım olan ise Google veya başka bir reklam sistemine ait reklam kodunuz ve aşağıda sizlerle paylaştığım fonksiyon. Aşağıdaki fonksiyon 1000 karakterlik bir yazıda işleme geçiyor. Tabii isterseniz bu karakter sayısını değiştirebiliyorsunuz.

Kod

Bu kod ile birlikte temanızın içinde bulunan functions.php dosyasını düzenleyeceğiz. Bu temanızın ve WordPress sisteminin düzgün çalışabilmesi için gerekli olan bir dosya olduğundan, işlemden önce lütfen yedek alınız. functions.php wp-content/themes/temanizin-adi/ klasöründe bulunur.
function belli_karakter_sonrasi_reklam($content) {
  // Reklamı sadece 1000 karakterlik yazı olursa ekle
  $yazi_uzunlugu = 1000;
  // </p> etiketini ilk 500 karakter sonrası ekle
  $az_karakter = 500;
  if (is_single() && strlen($content) > $yazi_uzunlugu) {
    $before_content = substr($content, 0, $az_karakter);
    $after_content = substr($content, $az_karakter);
    $after_content = explode('</p>', $after_content);
    $text = '
      <!-- REKLAM KODUNU EKLEYİN -->
    ';
    array_splice($after_content, 1, 0, $text);
    $after_content = implode('</p>', $after_content);
    return $before_content . $after_content;
  }
  else {
    return $content;
  }
}
add_filter('the_content', 'belli_karakter_sonrasi_reklam');

Yukarıdaki kodu temanızın içinde bulunan functions.php dosyasının en altına ?> satırında önce ekleyin. Sonra sırasıyla şu değişiklikleri yapabilirsiniz.
$yazi_uzunlugu : Bu alan yazının en az kaç karakter barındırmasını gerektiğine karar verdiğiniz alan. Ben 1000 karakter olarak düzenledim. Siz daha düşün ya da yazınızı uzun tutuyorsanız daha yüksek bir rakam ekleyebilirsiniz.
$az_karakter : Yazı uzunluğunun yarısı olması gerekiyor normalde. Bu sayıdaki karaktere gelindiğinde bir paragraf kapatma etiketi atarak reklam kodunuzun eklenmesinde rol oynuyor.
REKLAM KODUNU EKLEYİN : BU alana reklam kodunuzu ekleyeceksiniz. Ama dikkat etmeniz gereken birşey var. PHP kodları içerisinde kodu ekleyeceğimiz için, reklam kodu içerisinde yer alan tek tırnak () tanımlamaları kodu bozacaktır. Yani tanımlamaları çift tırnak () içinde yapmalıyız. Örnek olarak aşağıda belirttim.

$text = ' <script type='text/javascript' src='http://abc.js'> ';
// Bu şekilde yapıldığında kod hata verecektir.
$text = ' <script type="text/javascript" src="http://abc.js"> ';
// Bu şekilde yapıldığında kodda bir sıkıntı olmayacaktır

Herhangi soru/sorun ve eklemek istediğiniz şeylerde yorum bırakırsanız sevinirim.

Güncelleme: Paragraf etiketi yoksa nasıl olacak?

Hüseyin Uslu’nun şuradaki sorusuna istinaden anlatıyorum.

Yukarıdaki kod içerisinde karakterleri bölmek için paragraf kapatma ve açma etiketlerini arıyorduk. Aşağıdaki kodda ise istenen karakter sayısını bulduğumuz gibi direkt kodu ekliyoruz. Bunun için yapmamız gereken şey explode(), array_splice() gibi ayrım yaptığımız fonksiyonları etkisiz hale getirmek ve direkt olarak substr() ile bölmüş olduğumuz yazının içerisine reklam kodumuzu eklemek. Aşağıdaki fonksiyonda REKLAM İÇERİĞİ yazan alana kendi text veya Adsense yada herhangi bir reklam sağlayıcısından aldığınız kodu ekleyebilirsiniz.

function belli_karakter_sonrasi_reklam($content) {
  // Reklamı sadece 1000 karakterlik yazı olursa ekle
  $yazi_uzunlugu = 1000;
  $az_karakter = 400;
  if (is_single() && strlen($content) > $yazi_uzunlugu) {
    $before_content = substr($content, 0, $az_karakter);
    $after_content = substr($content, $az_karakter);
    $text = 'REKLAM İÇERİĞİ';
    return $before_content . $text.  $after_content;
  }
  else {
    return $content;
  }
}
add_filter('the_content', 'belli_karakter_sonrasi_reklam');

Selametle

Serkan Algur: WordPress ile uğraşan deli bir adam...

This website uses cookies.