Вы здесь:   Главная » Вебмастеру    »    Размещение рекламы на WordPress без плагинов

Размещение рекламы на WordPress без плагинов

Ранее мы рассмотрели возможности плагина «NewAdman», благодаря которому, можно легко разместить рекламный код в постах. Теперь же разберём каким образом можно исключить установку плагинов, используя только код на WordPress.

Некоторые варианты размещения, ничем не уступают функциональности плагинов WP, при этом нагрузка на сайт снижается, а нам того и надо! Перед тем, как начать описывать действия, подготовьте рекламный код («Рекламной сети Яндекса» или «GoogleAdsense»), так как они понадобятся входе работы с кодом.

Автоматическое Размещение рекламы на WordPress

1. Размещаем рекламу на главной и страницах архивов

Обычно, главная страница и архивы категорий выпадают из вида вебмастера, а ведь это, достаточно, популярная область просмотра пользователями. Поэтому стоит задуматься о размещении рекламных позиций и в этих местах.

Во первых, создадим текстовый файл с помощью стандартного блокнота. Переименуем его в «reklama.php» — изменяя и расширение файла (с TXT на PHP). Подключившись к сайту по средствам FTP доступа, скопируйте созданный файл в директорию вашей активной темы WordPress (по пути: /wp-content/themes/название_вашей_темы/).

Далее перейдём в админ-панель WP в раздел «Внешний вид» — «Редактор». Где уже доступен загруженный «reklama.php», в него вставьте, заранее скопированный, рекламный код и сохраните изменения.

Следующим шагом, откройте на редактирование основной шаблон темы «index.php». Найдите в нём строку:

<?php while(have_posts()) : the_post(); ?>

Замените её на нижеуказанный код:

<?php while(have_posts()) : the_post(); $postcounter++; ?>

Тем самым, мы монтируем счётчик к выводу постов. Далее, сразу после этой строчки, вставляем:

<?php if($postcounter% 2 != 0) { include(TEMPLATEPATH . '/reklama.php'); } ?>

В итоге должно получиться:

<?php while(have_posts()) : the_post(); $postcounter++; ?>
<?php if($postcounter% 2 != 0) { include(TEMPLATEPATH . '/reklama.php'); } ?>

При таких изменениях, рекламные блоки будут выводиться над первым, третьем, пятым постами (т.е. через один по количеству постов на главной странице). Немного надо пояснить значение счетчика анонсов на главной «$postcounter», указанное значение «++» в начале показывает добавление одного поста после публикации. А код «if ()» показывает, после какого анонса будет отображаться реклама.

Значение «% 2 != 0», указывает на то, что рекламные блоки будут появляться, если остаток от арифметического деления порядка этого поста на 2 не равен 0. Например, второй пост: 2/2=1 (остаток равен 0), значит, блок не выводится, третий: 3/2=1 (остаток 1), выводится и так далее. Число 2 можно заменить на любую другую цифру; таким образом можно индивидуально формировать карту вывода рекламных позиций.

Рассмотрим и другой вариант, при котором рекламный блок выводится после анонса поста, а не перед, как в первом случае. В файле «index.php»: находим строку окончания вывода цикла:

<?php endwhile; ?>

И вставляем перед ней::

<?php if($postcounter% 2 != 0) { include(TEMPLATEPATH . '/reklama.php'); } ?>

Счетчик «$postcounter++» при этом остаётся в начале цикла. То есть, во втором случае рекламная позиция смещается относительно анонсов, и будет размещаться под первым, третьим и пятым.

Если, скажем, у Вас размещение анонсов по сетке «Три в ряд»:, то можно попробовать использовать такой вывод позиций:

<?php if ($postcounter % 6 == 3) { include (TEMPLATEPATH . '/reklama.php'); } ?><?php endwhile; ?>

При таком применении, реклама отобразиться после первого ряда и через два последующих. Если на главной выводится 18 постов, то количество рекламных блоков составит — 3 позиции.

Все вышеописанные действия применяются и к файлу «archive.php» и «category.php». Если цикл вывода анонсов совпадает с главной страницей, то и изменений в коде не понадобится – вставляем заготовленные строчки и сохраняем результат!

2. Размещение в любом месте темы

Чтобы созданный файл «reklama.php» послужил ещё на благо сайта, можно с помощью PHP строчки вывести рекламный блок в любом месте темы WordPress. Скопируйте код и разместите в шаблоне одиночной записи (single.php) или базового шаблона страницы «page.php»:

<?php include (TEMPLATEPATH . '/reklama.php'); ?>

Предпочтительным будут места вверху основного контента и под ним, а также Вы сможете вставить вывод в виджет sidebar(в том случае, если у Вас отрабатывается код PHPв этой области).

3. Размещаем рекламу внутри поста

После долгих изысканий, нашёл универсальный код функции для WordPress, которая выводит указанный рекламный код внутри поста. Универсальность состоит в том, что функция определяет, не только количество знаков HTML контента после которого следует отобразить блок, но и минимальное количество знаков для отображения рекламы.

В итоге рекламный код будет отображён только при соблюдении двух условий: достаточный объём контента, целевое количество знаков для вывода. Скопируйте код в файл «functions.php» вашей активной темы в самый конец перед закрывающим «?>»:

function inject_ad_text_after_n_chars($content) {
// only do this if post is longer than 1000 characters
$enable_length = 1000;
// insert after the first </p> after 500 characters
$after_character = 400;
if (is_single() && strlen($content) > $enable_length) {
$before_content = substr($content, 0, $after_character);
$after_content = substr($content, $after_character);
$after_content = explode('</p>', $after_content);
$text = '
//Здесь ваш код рекламы//
';
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', 'inject_ad_text_after_n_chars');

Перед редактированием, стоит сделать резервную копию functions.php, во избежание возможных проблем некорректной работы. В коде можно изменить две строчки в начале:

$enable_length = 1000;
Отвечает за соответствие общему количеству знаков в контенте поста (вместо 1000 укажите своё, отвечающее формату сайта).

 $after_character = 400;
Отвечает за количество знаков для вывода рекламы. Указанное значение может округляться до ближайшего абзаца в тексте (очень удобно, так как при этом контент не разрывается). Лучше, если число будет соответствовать количеству ограничения первого параметра функции (400 также меняем на своё).

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

P.S.

Вот и всё, Этих трёх вариантов размещения рекламы достаточно для большинства блогов на WordPress. Вы сможете поэкспериментировать с кодом и его позициями в шаблоне, так как кликабельные места у каждого сайта свои, и не стоит равняться на другие веб проекты!

Успехов в начинаниях и доходных проектов!

Расскажи друзьям:

Комментарии
  1. Igor
  2. Николай
    • admin
  3. Виктор
  4. Ya
    • Admin

Оставить комментарий

Авторизоваться через: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: