Статьи

Як розмістити рекламу в тексті статті, в контенті? Хак для WordPress.

  1. А тепер по темі: як вставити рекламу в контент
  2. Якщо потрібно вставити рекламний блок перед тегом more
  3. Реклама лише для старих постів

Найкраще в книзі те, що вона не обривається на найцікавішому місці для рекламної вставки ... Найкраще в книзі те, що вона не обривається на найцікавішому місці для рекламної вставки

Знаю, що це самий витончений і мабуть, ненависний з боку користувача спосіб вставляти рекламний блок в текст статті, але в деяких, рідкісних, випадках нехтувати таким способом нерозумно, втім, це тільки лише моя думка.

До речі, щодо реклами на блогах підняв тему відомий блогер - Сосновський. Я повністю з ним солідарний в цьому питанні і не на секунду не згоден з тими, хто писав в коментарях, що його стаття - спроба виправдатися.

А тепер по темі: як вставити рекламу в контент

Уявляю хак для WordPress, завдяки якому можна легко встановити рекламний блок в текст статті, наприклад, рекламний блок Google AdSense або ЯДірект.

Вже не пам'ятаю де, але десь я бачив реалізацію цього завдання, тільки було описано як вставити рекламний блок в текст статті після тега <! - more ->. А як бути якщо на сайті автор в принципі не користується цим тегом, як тоді вставити рекламу на всі сторінки? Відповідь на це питання - такий ось мій код:

<? Php / ** * Вставляє рекламний блок в перший перенос рядка або перший закриває тег </ p> або </ table> * через певну кількість символів. * * @Param number $ nu - через скільки символів шукати перенесення рядка і вставляти рекламу? 400 - за замовчуванням. * * Version: 0.2 * / add_filter ( 'the_content', 'kama_content_advertise', -10); function kama_content_advertise ($ text, $ num = false) {if (! is_singular ()) return $ text; // переконаємося що ми на окремій сторінці if (! $ Num) $ num = 400; // Код реклами ob_start (); ?> <Div class = "kama-inline-ads" style = "float: right; margin: 0 0 1em 1.5em;"> тут рекламний код </ div> <? Php $ adsense = ob_get_clean (); // Розкоментуйте, якщо потрібно вставити блок відразу перед тегом <! - more -> # return str_replace ( '<! - more ->', $ adsense. '<! - more ->', $ text ); return preg_replace ( '~ [^^] {'. $ num. '}. *? (?: \ r? \ n \ r? \ n | </ p> | </ table>) ~ su', "\ $ {0} $ adsense ", trim ($ text), 1); }

Код вставляє рекламний блок в перший попалася перенесення рядка або закриває тег </ p> або тег </ table> через певну кількість символів (задається у змінній $ nu). Тобто в даному випадку в тексті статті буде пропущено 400 символів, після яких буде знайдений перший перенесення рядка (або тег </ p>) і перед ним буде вставлений рекламний блок.

Думаю не потрібно акцентувати увагу на тому, що фразу "тут рекламний код" потрібно замінити на, цей самий, рекламний код? Думаю не потрібно акцентувати увагу на тому, що фразу тут рекламний код потрібно замінити на, цей самий, рекламний код

Якщо потрібно вставити рекламний блок перед тегом more

Так само на всякий, пожежний випадок я передбачив випадок, коли потрібно вставляти рекламний блок перед тегом <! - more ->, для цього, просто розкоментуйте передостанню рядок:

return str_replace ( '<! - more ->', $ adsense. '<! - more ->', $ text); // return preg_replace ( '@ ([^^] {'. $ Nu. '}. *?) (\ R? \ N \ r? \ N | </ p>) @', "\\ 1 $ adsense \\ 2 ", trim ($ text), 1);

Реклама лише для старих постів

Якщо є необхідність показувати рекламу тільки для постів термін давності яких, скажімо, 7 днів, то використовуйте такий код:

add_filter ( 'the_content', 'kama_content_advertise', -10); function kama_content_advertise ($ text) {$ days = 7; // через скільки днів, через дату публікації поста, показувати рекламу. $ Nu = 400; // через скільки символів шукати перенесення рядка і вставляти рекламу? $ Offset = (int) time () - (int) strtotime ($ GLOBALS [ 'post'] -> post_date); if ($ offset <(3600 * 24 * $ days)) return $ text; // Код реклами $ adsense = '<div style = "float: right; margin: 0 0 10px 15px;"> тут рекламний код </ div>'; return preg_replace ( '@ ([^^] {'. $ nu. '}. *?) (\ r? \ n \ r? \ n | </ p>) @', "\\ 1 $ adsense \\ 2 ", trim ($ text), 1); }

Розміщувати рекламу таким чином може бути зручно, коли ви не хочете заважати своїм постійних читачів рекламою в нових статтях. Адже саме постійні читачі в першу чергу заходять прочитати ваш черговий шедевр.

А як бути якщо на сайті автор в принципі не користується цим тегом, як тоді вставити рекламу на всі сторінки?
@Param number $ nu - через скільки символів шукати перенесення рядка і вставляти рекламу?
Em;"> тут рекламний код </ div> <?
R?
Думаю не потрібно акцентувати увагу на тому, що фразу "тут рекламний код" потрібно замінити на, цей самий, рекламний код?
R?
Nu = 400; // через скільки символів шукати перенесення рядка і вставляти рекламу?
R?

Новости