DIY Главная Медиа Logo

Конечная сайт для проектирования и создания вашей установке домашнего кинотеатра и Привет-Fi.

5Wordpress ЛоготипAdsense объявления выше последнем абзаце поста

Возможно, вы заметили, что мы изменили способ показа наших рекламных объявлений. Мы хотели небольшие текстовые объявления в нижней части каждой статьи, который будет добавлен автоматически. Это заняло немного возиться, но в конце концов мы разработали решение, которое работает хорошо и, похоже, не сильно сокращает время обработки страниц. Просто добавьте следующий код в functions.php вашей темы (не забудьте изменить идентификаторы AdSense)

Обновлено 12 ноября 2017 года, так как код не работал правильно, как было показано ранее. Я также добавил 2 другие функции, которые я использую, один, чтобы вставить рекламу через шорткод, и еще один, чтобы добавить объявление, где больше удаляется, когда сообщение отображается полностью

/************************************************************************\
* Adsense Короткий код для вставки 2 небольшие объявления в любом месте через шорткод *
\************************************************************************/
функция Google_Adsense( $ATTS, $содержание = нуль ) {
   Возвращение "<Класс дел ="a" стиль ="выравнивания текста: центр;"><дел ID ="Google-1"></дел><р стиль ="Чисто: оба"></р></дел>';
}
add_shortcode('Google_adsense', 'Google_Adsense');




/******************************************\
* Показать 2 маленькие AdSense объявления на более теге *
\******************************************/
add_filter('Контент', 'Adsense_added_at_more_tag');

// Эта функция заменить более тег с AdSense кодов.
функция adsense_added_at_more_tag($текст) {
если( холост() ) :
$ads_text = '<дел ID ="Google" класса ="a" стиль ="выравнивания текста: центр;"><дел ID ="Google-1"></дел><р стиль ="Чисто: оба"></р></дел>';
$Pos1 = StrPos($текст, '<продолжительность ID ="Больше-');
//"
если($Pos1 === FALSE) $текст = $ ads_text . $текст;
еще
{
$pos2 = StrPos($текст, '</пролет>', $Pos1);
$текст1 = зиЬзЬги($текст, 0, $Pos1);
$текст2 = зиЬзЬги($текст, $pos2 + 7);
$текст = $ text1 . $ads_text . $text2;
}
ENDIF;
возвращение $ текст;
}




/*******************************************************\
* Показать один большой ADSENSE объявление выше последнего пункта *
\*******************************************************/
add_filter('Контент', 'Gads_added_above_last_para');

функция gads_added_above_last_para($ytext) {
если( холост() ) :
$yads_text = '<Класс дел ="a" стиль ="выравнивания текста: центр;"><дел ID ="Google-2"></дел><р стиль ="Чисто: оба"></р></дел>';
если($ypos1 = strrpos($ytext, '</р>')){
$ytext1 = зиЬзЬги($ytext, 0, ($ypos1 + 4));
$ytext2 = зиЬзЬги($ytext, ($ypos1 + 4));
$ytext = $ ytext1 . $yads_text . $ytext2;
}
ENDIF;
возвращение $ ytext;
}

Есть некоторые собственные мысли? Побалуйте себя ниже, комментируя! Если вы хотите подписаться, используйте ссылку подписки в меню в правом верхнем углу.. Вы также можете поделиться этим со своими друзьями, используя приведенные ниже социальные ссылки.. Ура.

оставьте ответ

5 Комментарии

GravatarСара Джонс

I don’t know but your code was not work­ing in my case. Так, I replaced it with oth­er code. If any­one else is facing the same prob­lem, then you can use the below code.

func­tion insert_ad_block( $текст ) {

если ( холост() ) :

$ads_text = ‘My Ad Code Here’;
$split_by = “\n”;
$insert_after = 2; //number of para­graphs

// make array of para­graphs
$para­graphs = explode( $split_by, $текст);

// if array ele­ments are less than $insert_after set the insert point at the end
$Len = кол( $para­graphs );
если ( $только < $insert_after ) $insert_after = $ Len;

// insert $ads_text into the array at the spe­cified point
array_splice( $para­graphs, $insert_after, 0, $ads_text );

// loop through array and build string for out­put
для каждого( $para­graphs as $para­graph ) {
$new_text .= $para­graph;
}

возвращение $ new_text;

ENDIF;

возвращение $ текст;

}
add_filter(‘the_content’, ‘insert_ad_block’);

Ответить
GravatarДжон Скайф

Абсолютно. Вам просто нужно будет немного подправить код. Я использую strrpos которая находит последнее вхождение <p>
Если вы хотели найти второе вхождение <p> заменить строку 13 из кода выше ...

если($Pos1 = StrPos($текст, '<р>', strpos($текст, '<р>') + 3)){
Ответить
GravatarКрис

Отличная работа человек. Большое спасибо. Есть ли у вас идеи, как разместить горизонтальную линию над и под рекламным блоком??

Ответить
GravatarДжон Скайф

Конечно. Добавить пару <ч />'Ы - 1 в начале значения $ ads_text и другого в конце.
E.g. замещать

$ads_text = '<Класс дел ="a" стиль ="выравнивания текста: центр;"><script type="text/javascript"><!--
            google_ad_client = "ca-pub-0754629982287605";
            /* DMH-PostsMini */            google_ad_slot = "5138459326";
            google_ad_width = 468;
            google_ad_height = 15;
            //-->
            </сценарий>
            <script type="text/javascript" SRC ="HTTP://pagead2.googlesyndication.com/pagead/show_ads.js">
            </сценарий></дел>';

С

$ads_text = '<ч /><Класс дел ="a" стиль ="выравнивания текста: центр;"><script type="text/javascript"><!--
            google_ad_client = "ca-pub-0754629982287605";
            /* DMH-PostsMini */            google_ad_slot = "5138459326";
            google_ad_width = 468;
            google_ad_height = 15;
            //-->
            </сценарий>
            <script type="text/javascript" SRC ="HTTP://pagead2.googlesyndication.com/pagead/show_ads.js">
            </сценарий></дел><ч />';
Ответить