Как вставить рекламный блок в контент поста для сайта на WordPress

Поддерживать свой собственный блог на WordPress достаточно трудно не только из-за больших затрат времени, но и с финансовой стороны вопроса. Многим вебмастерам покрыть финансовые затраты удается лишь благодаря размещению рекламы на своих сайтах. Наш блог тоже работает в большой степени благодаря рекламе и вашим щедрым пожертвованиям.

Нас несколько раз спрашивали, как мы добились того, чтобы на каждой странице поста показывать несколько рекламных блоков. Вставляем ли мы рекламные объявления вручную при редактировании каждого поста, или используем для этого специальный код? Если и вас интересуют ответы на эти вопросы, обратите свое внимание на сегодняшнюю статью. Мы уже писали об одном из вариантов такого решения (используя простой шорткод), а сегодня мы расскажем, как можно автоматически вставлять блоки с рекламными объявлениями в каждый пост и после определенного количества абзацев (параграфов).

 

 

Самый простой (но неэффективный) способ добавления рекламы в пост – это добавлять код рекламного объявления вручную. Этот метод очень тяжелый и содержит в себе потенциальную проблему, когда, например, в будущем нужно будет заменить этот код на всех страницах. Поэтому мы рассмотрим только автоматический способ добавления рекламы в посты сайта на WordPress. Он очень эффективен и, при необходимости заменить код рекламы, вам нужно будет отредактировать лишь несколько строк кода в одном файле.

Этот способ не требует использования специальных плагинов и он подойдет даже начинающим в WordPress.

Откройте файл functions.php своей активной темы и вставьте указанный ниже код.

Чтобы добавить свой код рекламного объявления, просто замените значение переменной $reklamniy_cod, где приведена строка «Добавьте сюда свой код с рекламным объявлением». Если вы хотите вставлять рекламу не после 3-го абзаца, а, например, 5-го, просто измените цифру 3 на цифру 5 в строке под номером 4 (там, где return vstavka_reklami_pislya_paragrapha(…)).

 

Пример кода для вставки в файл functions.php:

// Вставляем рекламный блок после 3-го абзаца на странице с отдельным постом
function sebweo_reklamniy_block( $content ) {
 $reklamniy_cod = '<div>Добавьте сюда свой код с рекламным объявлением</div>';
 if ( is_single() && ! is_admin() ) {
  return vstavka_reklami_posle_paragrapha( $reklamniy_cod, 3, $content );
 }
 return $content;
}

// Дочерняя функция по вставке рекламного объявления
function vstavka_reklami_posle_paragrapha( $vstavka, $paragraf_id, $content ) {
 $zakritiye_p = '</p>';
 $paragrafi = explode( $zakritiye_p, $content );
 foreach ($paragrafi as $index => $paragraf) {
  if ( trim( $paragraf ) ) {
   $paragrafi[$index] .= $zakritiye_p;
  }
  if ( $paragraf_id == $index + 1 ) {
   $paragrafi[$index] .= $vstavka;
  }
 }
 return implode( '', $paragrafi );
}

add_filter( 'the_content', 'sebweo_reklamniy_block' );

 

 

 

 

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

 

Recent Posts

SQL-инъекции: теоретическая часть необходимых знаний

Защита сайта от хакеров, ботов и онлайн-уязвимостей – это многогранная и кропотливая работа. А среди…

4 часа ago

Надоедливая ошибка _load_textdomain_just_in_time в WordPress

Сегодня рассмотрим практический кейс по борьбе с надоедливой ошибкой, с которой часто сталкиваются программисты WordPress…

1 день ago

Харуки Мураками

Если есть достойная цель, то она упрощает наше существование Харуки Мураками  

2 дня ago

Помощь при выборе и покупке электрогенератора в Украине

В современном мире, где стабильность электроснабжения является ключевым фактором комфорта и бесперебойной работы, наличие надежного…

6 дней ago

Уоррен Баффетт

Даже если вы очень талантливы и прилагаете большие усилия, для некоторых результатов просто нужно время:…

2 недели ago

Пошаговая инструкция Импорта данных из Excel в MySQL через phpMyAdmin

Этот практический урок поможет вам перенести данные из вашего Excel-файла (с некоторыми конкретными столбцами) в…

2 недели ago