mojwp.ru
Назад

Как вставить рекламу после определенного абзаца статьи

Опубликовано: 13.06.2014
24
1767

вставить рекламу после абзацаСегодня вы научитесь вставлять любую информацию после произвольного абзаца статьи на сайте.

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

Для автоматизации работы и более широкого функционала я рекомендую использовать мой плагин AdsPlace'r Pro. Здесь не только возможность выбора после какого абзаца выводить рекламу, но и множество других полезных настроек для увеличения дохода.

Отличие найденного мной кода в том, что он вставляет вашу информацию после указанного абзаца: после 1, после 2, после 3 и т.д. Таким образом, вы будете всегда знать что необходимое вам в "первом экране", либо в нужном месте.

// Вставляем любой код выбранного после абзаца
add_filter( 'the_content', 'wpse_ad_content' );
function wpse_ad_content( $content ) {
        if( !is_single() )
            return $content;
            $paragraphAfter = 3; //Введите номер абзаца, после которого вставляем.
            $content = explode ( "

", $content ); $new_content = ''; for ( $i = 0; $i < count ( $content ); $i ++ ) { if ( $i == $paragraphAfter ) { $new_content .= ' здесь ваш код '; } $new_content .= $content[$i] . "

"; } return $new_content; }

Все это дело необходимо вставить в файл функций шаблона (functions.php). Сделать это можно сразу в его начале, после символа <?php и с новой строки.

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

Вместо "здесь ваш код" вставляете свой код или текст. Обратите внимание, что он берется с двух сторон в одинарные кавычки ' и '. Поэтому!!! Если во вставляемом вами сюда коде так же будут одинарные кавычки, то перед ними ОБЯЗАТЕЛЬНО должны стоять \ (наклонная черта "лево верх к право низ").

Пример с кодом Яндекс.Директ:

add_filter( 'the_content', 'wpse_ad_content' );
function wpse_ad_content( $content ) {
        if( !is_single() )
            return $content;
            $paragraphAfter = 3; //Введите номер абзаца, после которого вставляем.
            $content = explode ( "

", $content ); $new_content = ''; for ( $i = 0; $i < count ( $content ); $i ++ ) { if ( $i == $paragraphAfter ) { $new_content .= '
'; } $new_content .= $content[$i] . "

"; } return $new_content; }

Не используйте мой код РСЯ, т.к. на вашем сайте он не будет работать. Зато можете наглядно посмотреть, что перед всеми одинарными кавычками я поставил \ (наклонную черту). Аналогично сделаете и вы, если в используемом вами коде будут такие одинарные кавычки.

Автор:
Виталий
Поделиться
Похожие записи
Черкани пару строк
  • Валерий
    Опубликовано: 14.06.2014 Ответить на сообщение

    Вот это удобное решение! Вечерком опробуем!

    • Виталий
      Опубликовано: 18.06.2014 Ответить на сообщение

      И как результаты? Увеличились клики?

      • Валерий
        Опубликовано: 18.06.2014 Ответить на сообщение

        Пока еще не пробовал. Все завтра-завтра)

        • Виталий
          Опубликовано: 18.06.2014 Ответить на сообщение

          Не ленись. Пробуй.
          Жду отчета с результатами через неделю)

  • Андрей
    Опубликовано: 21.06.2014 Ответить на сообщение

    Отличное решение, долой плагины, возьму на вооружение.

  • darwin
    Опубликовано: 26.06.2014 Ответить на сообщение

    Хорошая информация. Автору спасибо!
    А, у меня вопрос, а можно сделать так, чтобы код показывал рекламу перед первым абзацом.
    Очень нужно. Заранее спасибо!

    • Виталий
      Опубликовано: 26.06.2014 Ответить на сообщение

      Тут код специальный не нужен.
      Необходимо найти в файле шаблона функцию the_content () и перед ней вставить свой код. Здесь достаточно немного разбираться в коде шаблонов WordPress (php).
      Либо воспользуйтесь плагинами, которые упоминаются в статье.

  • Сергей
    Опубликовано: 01.08.2014 Ответить на сообщение

    Хорошее решение вопроса! - плагин очень часто ставить среднюю рекламу совсем не к месту - "разрывает текст".
    Приходилось ставить руками в каждую Запись

  • Андрей
    Опубликовано: 19.08.2014 Ответить на сообщение

    Добрый. Виталий, а как вставить рекламу после, например, 2-го и 10-го абзацев? Пробовал еще раз прописывать код в functions.php - не работает.

    • Виталий
      Опубликовано: 19.08.2014 Ответить на сообщение

      Добрый день.
      Будьте внимательнее: в статье сказано где менять цифру абзаца.
      Повторно данный код внутри одной статьи работать не будет. Меняйте wpse_ad_content в двух местах кода на другое

      • Андрей
        Опубликовано: 19.08.2014 Ответить на сообщение

        Спасибо, изменил наименование функции, все получилось.

  • Sk8er
    Опубликовано: 05.11.2014 Ответить на сообщение

    Беда данного хака в том, что теперь в конце поста вставляется . Просто в таком виде, без контента.

    • Виталий
      Опубликовано: 05.11.2014 Ответить на сообщение

      Не понял: что вставляется в конце записи?

  • Дмитрий
    Опубликовано: 02.11.2015 Ответить на сообщение

    Пробовал добавить вывод шорткода таким методом там, где мне надо. Оказалость, что нужно шорткод вставлять без каких-либо функций (ду шорткод) тупо вместо слов "здесь ваш код".
    Т.е. в виде [шорткод]
    Может кому пригодится.

    • Дмитрий
      Опубликовано: 12.04.2016 Ответить на сообщение

      С этим кодом после первого абзаца удобно выводить шорткод содержимого статьи. Чтобы не сразу за заголовком шло, а после куска текста. Вставлял шорткод [toc] для длагина Table of Contents Plus.

  • Виталий
    Опубликовано: 25.09.2016 Ответить на сообщение

    Как сделать чтобы код выводился после нескольких абзацев разных партнерок. Например, после 3-го Адсенсы, а после 8-го код тизерной сети?

  • Татьяна
    Опубликовано: 26.09.2016 Ответить на сообщение

    Подскажите, пожалуйста, тоже не поняла, на что нужно менять wpse_ad_content, чтобы вставить рекламу в нескольких местах статьи?

  • Сергей Ермолинский
    Опубликовано: 12.02.2017 Ответить на сообщение

    Спасибо за статью. А, как отключить TOC в мобильной версии сайта? И с Яндексом сейчас тема работает (я о коде)? И, как Яндекс к этому относится?

  • Оксана
    Опубликовано: 10.05.2017 Ответить на сообщение

    Спасибо, помогло!

  • Андрей
    Опубликовано: 13.05.2017 Ответить на сообщение

    Доброго времени суток.

    Использую код "выводить рекламу после определённого абзаца"

    А что если необходимо выводить несколько блоков,к примеру, два. Приходится дублировать код в файле функшионс (заменив имя функции). Может есть возможность уместить всё в одном коде для максимальной обработки?

    И ещё такой момент. Как можно модернизировать код, чтобы к примеру если указан 8 абзац, но если в статье всего 7 абзацев, то реклама не будет выведена вовсе. А можно сделать так, чтобы она выводилась в любом случае в последнем абзаце (к примеру последнем 7-ом), при условии, чем их меньше чем заданное?
    А если 8 абзац есть, то всё работало как обычно.

    Заранее спасибо за ответ.

    • Виталий
      Опубликовано: 14.05.2017 Ответить на сообщение

      Используйте плагин AdsPlace'r Pro, в котором все это автоматизировано и удобно в работе.

  • Катя
    Опубликовано: 26.09.2017 Ответить на сообщение

    Здравствуйте! Пожалуйста подскажите как поставить соц кнопки на сайт как ваши. Без плагинов и сайтов.

  • Инна
    Опубликовано: 20.11.2017 Ответить на сообщение

    Спасибо! перепробовала штук пять кодов с разных сайтов, сработал только ваш)

  • Егор
    Опубликовано: 06.07.2018 Ответить на сообщение

    Доброго времени суток. Не подскажите, а можно как нибудь данный код доработать чтобы контент добавлялся после, скажем, 3, 4 и 9 абзацев?

Имя
Укажите своё имя и фамилию
E-mail
Без СПАМа, обещаем
Текст сообщения
Отправляя данную форму, вы соглашаетесь с политикой конфиденциальности и правилами нашего сайта.