lostyazilim
tr.link

Wordpress'te yazı içine reklam ekleme | Eklentisiz!

34 Mesajlar 10.662 Okunma
lstbozum
tr.link

farego farego WM Aracı Kullanıcı
  • Üyelik 30.11.2017
  • Yaş/Cinsiyet 35 / E
  • Meslek idari işler
  • Konum İstanbul Avrupa
  • Ad Soyad G** D**
  • Mesajlar 305
  • Beğeniler 93 / 92
  • Ticaret 0, (%0)
Emeğinize sağlık sizin gibi ustaları burada görmek çok güzel.
 

 

Solargezi.com
wmaraci
reklam

WpOmerFaruk WpOmerFaruk blogkurdu.net Kullanıcı
  • Üyelik 31.03.2016
  • Yaş/Cinsiyet 33 / E
  • Meslek Wordpress Geliştiricisi
  • Konum İstanbul Anadolu
  • Ad Soyad Ö** Y**
  • Mesajlar 1177
  • Beğeniler 181 / 603
  • Ticaret 53, (%100)

farego adlı üyeden alıntı

Emeğinize sağlık sizin gibi ustaları burada görmek çok güzel.


Teşekkür ederim güzel düşünceleriniz için :)
farego

kişi bu mesajı beğendi.

erden89 erden89 WM Aracı Kullanıcı
  • Üyelik 18.05.2014
  • Yaş/Cinsiyet 35 / E
  • Meslek Programcı
  • Konum Mardin
  • Ad Soyad A** E**
  • Mesajlar 198
  • Beğeniler 18 / 55
  • Ticaret 1, (%100)
Kod çok kullanışlı. Ben şöyle bir kod olsaydı çok daha iyi olurdu diye düşünüyorum: Eğer paragraf sayısı 6 ise 2 reklam göstersin şeklinde. Yani paragraf arttıkça reklam sayısı da artsa çok daha güzel olur. Elinize sağlık.
 

 

WpOmerFaruk WpOmerFaruk blogkurdu.net Kullanıcı
  • Üyelik 31.03.2016
  • Yaş/Cinsiyet 33 / E
  • Meslek Wordpress Geliştiricisi
  • Konum İstanbul Anadolu
  • Ad Soyad Ö** Y**
  • Mesajlar 1177
  • Beğeniler 181 / 603
  • Ticaret 53, (%100)

erden89 adlı üyeden alıntı

Kod çok kullanışlı. Ben şöyle bir kod olsaydı çok daha iyi olurdu diye düşünüyorum: Eğer paragraf sayısı 6 ise 2 reklam göstersin şeklinde. Yani paragraf arttıkça reklam sayısı da artsa çok daha güzel olur. Elinize sağlık.


Sıfırdan bir düzenleme yapamadım kafam biraz dolu olduğu için ancak şu işinizi görecektir diye düşünüyorum.

Aşağıdaki kodu isteyen herkes kullanabilir. Kodun çalışma mantığı şu şekilde; İlk reklam kodunu yazının ilk paragrafından sonra ekliyor. Eğer yazıdaki toplam paragraf sayısı 6 veya 6dan fazla ise 2. reklam kodunu da ((toplam paragraf sayısı) / 2) +1 şeklinde hesaplayarak ortaya gelecek şekilde yerleştiriyor.

Örneğin; diyelim ki 20 paragraflık bir yazı yayınladınız. Bu kod ilk reklamı 1. paragraftan sonra ekliyor. 2. reklamı ise 11. paragraftan sonra ekliyor.

Diyelim ki 8 paragraflık bir yazı yazdınız ilk reklam yine 1. paragraftan sonra, 2. reklam ise 5. paragraftan sonra geliyor :) Umarım işinizi görür. Konuya da müsait vakitte ekleme yapacağım. Kodu kısa bir testten geçirdim üzerinde birkaç oynama yaptım, ilgilenenler de test edebilirler.

Yapmanız gereken tek şey
Birinci reklam.
ve
İkinci reklam.
kodları yerine kendi reklamlarınızı yerleştirmek.



add_filter( 'the_content', 'paragraflar_arasi_reklam_goster' );

function paragraflar_arasi_reklam_goster($content){

if( in_the_loop() ){

$closing_p = '

';
$paragraphs = explode( $closing_p, wptexturize($content) );

$count = count( $paragraphs );
if( 6 >= $count ) {
$totals = array( $paragraphs );
}else{
$midpoint = floor($count / 2);
$first = array_slice($paragraphs, 0, $midpoint );
if( $count%2 == 1 ) {
$second = array_slice( $paragraphs, $midpoint, $midpoint, true );
}else{
$second = array_slice( $paragraphs, $midpoint, $midpoint-1, true );
}
$totals = array( $first, $second );
}

$new_paras = array();
foreach ( $totals as $key_total=>$total ) {

$p = array();
foreach ( $total as $key_paras=>$paragraph ) {
$word_count = count(explode(' ', $paragraph));
if( preg_match( '~<(?:img|ul|li)[ >]~', $paragraph ) || $word_count < 10 ) {
$p[$key_paras] = 0;
}else{
$p[$key_paras] = 1;
}
}

$m = array();
foreach ( $p as $key=>$value ) {
if( 1 === $value && array_key_exists( $key-1, $p ) && $p[$key] === $p[$key-1] && !$m){
$m[] = $key;
}elseif( !array_key_exists( $key+1, $p ) && !$m ) {
$m[] = 'no-ad';
}
}

if( $key_total == 0 ){
$ad = array( 'ad1' => '
Birinci reklam.
' );
}else{
$ad = array( 'ad2' => '
İkinci reklam.
' );
}

foreach ( $total as $key_para=>$para ) {
if( !in_array( 'no_ad', $m ) && $key_para === $m[0] ){
$new_paras[key($ad)] = $ad[key($ad)];
$new_paras[$key_para] = $para;
}else{
$new_paras[$key_para] = $para;
}
}
}
$content = implode( ' ', $new_paras );
}
return $content;
}



Kaynak: https://stackoverflow.com/a/26083250/7178348
erden89

kişi bu mesajı beğendi.

wmaraci
wmaraci

swerty111 swerty111 WM Aracı Kullanıcı
  • Üyelik 17.02.2017
  • Yaş/Cinsiyet 30 / E
  • Meslek öğrenci
  • Konum Yalova
  • Ad Soyad M** U**
  • Mesajlar 625
  • Beğeniler 154 / 107
  • Ticaret 6, (%100)
Türkiye'de kolay kolay bulunamayacak bir rehber. Teşekkürler Ömer Bey yine döktürmüşsünüz :)
 

 

hlsbhr hlsbhr WM Aracı Kullanıcı
  • Üyelik 23.03.2016
  • Yaş/Cinsiyet 40 / E
  • Meslek Kumaş AR/GE Uzmanı
  • Konum İstanbul Avrupa
  • Ad Soyad H** B**
  • Mesajlar 887
  • Beğeniler 189 / 192
  • Ticaret 0, (%0)

WpÖmerFaruk adlı üyeden alıntı

Size de teşekkür ederim :)

İki farklı noktaya yerleştirmek için yukarıdaki kodu iki kez yapıştırın funcitons.php dosyasına ardından ikinci yapıştırdığınız kısımdaki yazi_icine_reklam_ekleme_fonksiyonu ve reklam_kodunu_yerlestirme_fonk ifadelerini değiştirin sonra yine ikinci fonksiyondaki 2 sayısı yerine 5 yazın oldu bitti :) Örnek kodu vereyim hemen:


//Aşağıdaki 2. paragraftan sonra görünecek olan ilk reklam kodu yer alıyor

add_filter( 'the_content', 'yazi_icine_reklam_ekleme_fonksiyonu' );

function yazi_icine_reklam_ekleme_fonksiyonu( $content ) {

$ad_code = '
İlk reklam.
';

if ( is_single() && ! is_admin() ) {
return reklam_kodunu_yerlestirme_fonk( $ad_code, 2, $content );
}

return $content;
}

function reklam_kodunu_yerlestirme_fonk( $insertion, $paragraph_id, $content ) {
$closing_p = '

';
$paragraphs = explode( $closing_p, $content );
foreach ($paragraphs as $index => $paragraph) {

if ( trim( $paragraph ) ) {
$paragraphs[$index] .= $closing_p;
}

if ( $paragraph_id == $index + 1 ) {
$paragraphs[$index] .= $insertion;
}
}

return implode( '', $paragraphs );
}

//Aşağıdaki 5. paragraftan sonra görünecek olan ilk reklam kodu yer alıyor

add_filter( 'the_content', 'yazi_icine_reklam_ekleme_fonksiyonu_ikinci' );

function yazi_icine_reklam_ekleme_fonksiyonu_ikinci( $content ) {

$ad_code = '
İkinci reklam.
';

if ( is_single() && ! is_admin() ) {
return reklam_kodunu_yerlestirme_fonk_ikinci( $ad_code, 5, $content );
}

return $content;
}

function reklam_kodunu_yerlestirme_fonk_ikinci( $insertion, $paragraph_id, $content ) {
$closing_p = '

';
$paragraphs = explode( $closing_p, $content );
foreach ($paragraphs as $index => $paragraph) {

if ( trim( $paragraph ) ) {
$paragraphs[$index] .= $closing_p;
}

if ( $paragraph_id == $index + 1 ) {
$paragraphs[$index] .= $insertion;
}
}

return implode( '', $paragraphs );
}


Hepsi bu kadar :)



Paylaşım için sağolasın, daha önce bunu denememe rağmen yapamamıştım şimdi sayende başardım..
 

 

İf you fight, you won't always win. But if you don't fight, you will always lose.

WpOmerFaruk WpOmerFaruk blogkurdu.net Kullanıcı
  • Üyelik 31.03.2016
  • Yaş/Cinsiyet 33 / E
  • Meslek Wordpress Geliştiricisi
  • Konum İstanbul Anadolu
  • Ad Soyad Ö** Y**
  • Mesajlar 1177
  • Beğeniler 181 / 603
  • Ticaret 53, (%100)

hlsbhr adlı üyeden alıntı

Paylaşım için sağolasın, daha önce bunu denememe rağmen yapamamıştım şimdi sayende başardım..


Rica ederim, hallolmasına sevindim :)

swerty111 adlı üyeden alıntı

Türkiye'de kolay kolay bulunamayacak bir rehber. Teşekkürler Ömer Bey yine döktürmüşsünüz :)


Estağfurullah, teşekkür ederim :)
 

 

BocekBasi BocekBasi WM Aracı Kullanıcı
  • Üyelik 26.05.2013
  • Yaş/Cinsiyet 36 / E
  • Meslek Sıradan
  • Konum Kahramanmaraş
  • Ad Soyad S** T**
  • Mesajlar 2842
  • Beğeniler 374 / 374
  • Ticaret 30, (%100)
Ellerinize sağlık hocam çok başarılı paylaşımlarınız
 

 

https://dapasorgu.com

WpOmerFaruk WpOmerFaruk blogkurdu.net Kullanıcı
  • Üyelik 31.03.2016
  • Yaş/Cinsiyet 33 / E
  • Meslek Wordpress Geliştiricisi
  • Konum İstanbul Anadolu
  • Ad Soyad Ö** Y**
  • Mesajlar 1177
  • Beğeniler 181 / 603
  • Ticaret 53, (%100)

BöcekBaşı adlı üyeden alıntı

Ellerinize sağlık hocam çok başarılı paylaşımlarınız


Teşekkürler :)
 

 

hlsbhr hlsbhr WM Aracı Kullanıcı
  • Üyelik 23.03.2016
  • Yaş/Cinsiyet 40 / E
  • Meslek Kumaş AR/GE Uzmanı
  • Konum İstanbul Avrupa
  • Ad Soyad H** B**
  • Mesajlar 887
  • Beğeniler 189 / 192
  • Ticaret 0, (%0)
Bir şey daha sormak istiyorum,
Burada eklediğimiz ikinci reklam kodunu kutu şeklinde yapıp sağa ya da sola yaslamamız mümkün mü acaba?
 

 

İf you fight, you won't always win. But if you don't fight, you will always lose.
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al