1

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

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

// Вставляем любой код выбранного после абзаца 
add_filter( 'the_content', 'wpse_ad_content' ); 
function wpse_ad_content( $content ) { 
        if( !is_single() ) 
            return $content; 
            $paragraphAfter = 3; //Введите номер абзаца, после которого вставляем. 
            $content = explode ( "</p>", $content ); 
            $new_content = ''; 
                for ( $i = 0; $i < count ( $content ); $i ++ ) { 
                    if ( $i == $paragraphAfter ) { 
                    $new_content .= ' здесь ваш код '; 
                    } 
            $new_content .= $content[$i] . "</p>"; 
            } 
            return $new_content; 
    }  

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

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

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

2

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

Второй вариант для вставки нескольких рекламных блоков через заданный интервал

//Несколько рекламных блоков
    function content_advertise($text){
//после скольких символов вставлять рекламу?
    $nu = 400;
//Код рекламы
    $adsense = '
Рекламный код
' ;
   // return str_replace('<p>', $adsense.'<p>', $text);
    return preg_replace('@([^^]{'.$nu.'}.*?)(\r?\n\r?\n|
)@', "\\1$adsense\\2", trim($text), 3);
}
//цыфра 3 - задает количество блоков
add_filter('the_content', 'content_advertise', -10);