Новости
Якщо вставка реклами Google Adsense або будь-якого іншого рекламного блоку на сторінки блогу WordPress справа досить тривіальне і відносно легко реалізовується - досить розбиратися в структурі шаблонів WordPress і мати мінімальні знання html / css - то ось зі вставкою реклами після тега more доведеться трохи попотіти. Справа в тому, що простим методом редагування шаблону тут уже не обійтися - в WordPress весь вміст поста виводиться в одному блоці the_content () і розділити його просто так не вийде.
Є кілька варіантів реалізації даного завдання:
- використовувати раніше створені шорткоди в кожній статті (самописние або створені через плагіни);
- використовувати відповідні плагіни;
- використовувати файл functions.php.
Спосіб 1 незручний тим, що всі раніше розміщені на блозі статті доведеться відредагувати вручну і вставити шорткоди. Якщо статей десяток-другий - це ще можна зробити, але якщо їх кількість перевалює за сотню - завдання стає малоцікавою. Крім того, при написанні нових статей, необхідно буде чітко пам'ятати про необхідність додавання шорткода.
Спосіб 2 поганий тим, що плагіни а) віднімають пам'ять і б) мають тенденцію застарівати і опинятися несумісними з новими версіями WordPress в самий невідповідний момент. І є ще пункт в) в кінці поста я покажу як можна вставляти рекламний блок в окремі статті. Плагіна, який би володів подібним функціоналом, я не зустрічав.
Спосіб 3 - на мій погляд, ідеальний. По-перше, ми економимо пам'ять, а по-друге - простота використовуваної функції майже на 100% гарантує нам працездатність необхідного функціоналу. Ну, а якщо що - підправити буде легше, ніж чекати поки автор плагіна викладе нову версію (якщо це взагалі станеться).
Власне, а навіщо взагалі розміщувати рекламу після тега more? звернемося до рекомендаціям Google по розміщенню блоків Adsense :
Розміщуйте оголошення поруч з контентом, який цікавить користувачів. Подумайте про те, чи легко вашим відвідувачам знайти потрібну інформацію.
Після цього Google показує нам як правильно і не правильно розміщувати блоки для досягнення кращої кликабельности:
При цьому легко зрозуміти, що найбільш важливою частиною сторінки будь-якого блогу є безпосередньо сама стаття. Шапка, підвал, сайдбарі - вторинні. Отже - під і над контентом блоки розміщувати не варто, що логічно:
- блок ДО статті - відвідувач ще не встиг зрозуміти чи варто йому читати матеріал далі і відволікатися на рекламу він не буде;
- блок ПІД статтею - багато блоги мають високий показник відмови через те, що користувач закриває сторінку сайту відразу після того як прочитав статтю. Відповідно, розраховувати на кліки після «фінальної точки» - особливо не варто.
Таким чином, ми логічно приходимо до розуміння того факту, що розміщувати блок найбільш оптимально після вступу до статті. Власне, середня схема в рекомендаціях Google показує нам саме його.
Отже, коли з теоретичною частиною ми розібралися, давайте перейдемо до практики. Отже, як же розмістити рекламний блок після тега more в WordPress без використання плагінів?
Для цього нам знадобиться:
- Знайти в папці нашої теми WordPress файл functions.php. Якщо такого файлу раптом немає - його потрібно створити. Якщо є - обов'язково зробіть його резервну копію перед додаванням коду.
- Додати в файл functions.php наступний код:
// Як вставити рекламу після тега more в WordPress без плагінів add_filter ( 'the_content', 'adsense_added_at_more_tag'); function adsense_added_at_more_tag ($ text) {if (is_single ()): $ ads_text = '<div class = "adsense"> // тут буде код Adsense або будь-який інший рекламний блок </ div>'; $ Pos1 = strpos ($ text, '<span id = "more-'); $ pos2 = strpos ($ text, '</ span>', $ pos1); $ text1 = substr ($ text, 0, $ pos2 +7); $ text2 = substr ($ text, $ pos2 + 7); $ text = $ text1. $ ads_text. $ text2; endif; return $ text;}
- відкрити файл з CSS-стилями нашої теми і додати в нього оформлення нашого рекламного блоку. Наприклад, можна зробити ось так:
.adsense {display: block; width: 100%; text-align: center; background: #FFF; }
Якщо ви хочете розміщувати блоки тільки в, наприклад, найбільш популярних статтях (найчастіше, вони будуть з різних рубрик), то для цього необхідно 4-й рядок в коді замінити на:
if (is_single (array (1,2,3))):
, Де 1,2,3 - це ID постів, в яких потрібно показувати блок. В такому випадку, в інших постах він показуватися не буде.
Власне кажучи, це все. Наш блок готовий і буде виводитися в будь-якому пості, який був розділений тегом more.