Как сделать свой шорткод для AdSense/Директ
Сегодня научимся создавать самый простой шорткод для отображения блоков рекламы AdSense или Я.Директ.
Фактически, продолжаю прошлую статью Следим за кликами AdSense в Google Analytics. Теперь сможете вручную "без геморроя" вставлять нужный блок рекламы в произвольное место статьи.
Вставить вручную произвольный код (в том числе рекламы Google и Yandex) в центр статьи можно при помощи моего плагина AdsPlace'r. НУ а создавать с легкостью шорткоды можно при помощи плагина sCode.
Так же ранее рассказывал как можно автоматически вставить рекламный блок после определенного абзаца - статья Как вставить рекламу после определенного абзаца статьи. Но здесь тоже нет гибкости, которую можно получить при ручной вставке кода.
Создаем свой первый простой шорткод
Итак. Нам понадобится файл functions.php шаблона. Делаем его резервную копию на всякий случай. Далее как обычно: после <?php переходим на новую строку и вставляем такой код:
// шорткод 1
function google_l() {
return ' здесь код рекламы ';
}
add_shortcode('googleadsense1', 'google_l');
Вместо фразы "здесь код рекламы" подставляем код блока AdSense иди Яндекса. Опять же, можете заменить google_l (в двух местах) на произвольное: на латинице и без пробелов.
Вызывать шорткод в теме будете обычным оператором [googleadsense1] (квадратные кавычки и внутри фраза из кода выше).
У себя по проектам я сделал немного удобнее. Смотрите:
// шорткод 1
function google_300_250_l() {
return ' здесь код рекламы ';
}
add_shortcode('googleadsense1', 'google_300_250_l');
// шорткод 2
function google_300_250_r() {
return ' здесь код рекламы ';
}
add_shortcode('googleadsense2', 'google_300_250_r');
// шорткод 3
function google_728_90_c() {
return ' здесь код рекламы ';
}
add_shortcode('googleadsense3', 'google_728_90_c');
Поясню суть: здесь представлены три шорткода, под 3 разных блока рекламы. Сами функции назвал для удобства по размерам и расположению блоков.
Теперь осталось вывести кнопки в панель форматирования текста, чтобы вам не пришлось запоминать все. Выглядеть будет примерно так:
По клику на соответствующую кнопку у меня автоматически подставляется нужный шорткод, который, в свою очередь, выводит нужный рекламный блок.
Цифры на кнопках - это размер блока, а буквы - обтекание блока текстом: L - слева, R - справа, С- центрировано.
Вывести аналогичные кнопки вы сможете сами, если почитаете статью Как выделить текст жирным, курсивом и подчеркиванием без стандартных тегов HTML. В пункте 2 разбирался данный хак. Сейчас либо добавляете новые строки кода для отображения кнопок рекламы, либо с нуля прописываете данную функцию, если ранее ее не использовали.
В данном случае просто избавляемся от одного из параметров самой кнопки - закрывающего. Выглядеть строка с кнопкой будет примерно так:
QTags.addButton( 'ads300_250_l', '300*250 L', '[googleadsense1]');
Обтекание блоков рекламы текстом
Возьмем для примера стандартный код блока AdSense:
Здесь есть такая строка:
style="display:inline-block;width:300px;height:250px;"
В ней прописаны стили блока. Добавим параметр обтекания слева и отступ справа, чтобы текст не налазил:
style="display:inline-block;width:300px;height:250px;float:left;margin-right:10px;"
Аналогично сделаем для второго блока, только с обтеканием справа и отступом от текста слева:
style="display:inline-block;width:300px;height:250px;float:right;margin-left:10px;"
Вроде все. Повышайте свои доходы за счет экспериментов по размещению блоков.