Как вставить рекламу перед первым H2 на странице

Данный вариант размещения лично на моих сайтах самый лучший в плане дохода и CTR.

В файл functions.php вставляем:

<?php 
## Выводит рекламу только перед первым заголовком h2, если он есть 
function kama_content_advertise( $text ){ 
if( ! is_singular() ) 
return $text; // убедимся что мы на отдельной странице
ob_start(); 
?>
<div class="kama-inline-ads" style=""> 
КОД РЕКЛАМЫ
</div>
<?php 
$adsense = ob_get_clean();
return preg_replace('/(<h2(.*)>)/uiUs', "$adsense<h2>", trim( $text ), 1);
} 
add_filter('the_content', 'kama_content_advertise', -10 ); 
?>

За основу взят код с WP-Kama, только немного переделанный. Также, я добавляю немного отступ сверху и снизу, а также выравниваю рекламу по центру, для этого нужно в файл style.css добавить:

.kama-inline-ads {
 margin-bottom: 40px;
 margin-top: 20px;
 text-align: center;
}

Вот и все.

Если нужно, не выводит рекламу из постов рубрики ID 63, то заменяем 15 строчку на это:

 $dis_cat = false;
 $url = explode('?', 'http://'.$_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
 $p_ID = url_to_postid($url[0]);
 if (intval($p_ID) > 0) {
  foreach((get_the_category($p_ID)) as $a_category) { 
   if ($a_category->cat_ID == 62) {
    $dis_cat = true;
   }
  }
  if (!$dis_cat) {
   add_filter('the_content', 'kama_content_advertise', -10 );
  }
 }

А если из нескольких рубрик сразу - например 62,63,64 - то заменяем строку 6 на это:

if (in_array($a_category->cat_ID, array(62,63,64))) {

Теперь точно все.

Перелинковка ↓
  • http://prostolinux.ru/ prostolinux

    А какой блок лучше всего ставить под h2?

    • http://www.lucky-seo.com/ Кирилл Лакиманов

      Под h2 я не ставлю, а перед ним лучше всего это:

      Для мобильных лучше ставить «Автоматический размер, Адаптивный», а для ПК ставить «336 x 280, Большой прямоугольник».

  • http://www.lucky-seo.com/ Кирилл Лакиманов


    Выводить что-либо только в постах и категориях

  • http://www.lucky-seo.com/ Кирилл Лакиманов

    На память