Разместить рекламу в середине статьи - как правильно?

12
MK
На сайте с 22.09.2017
Offline
27
1861

Добрый день!

Есть задача разместить тизерную рекламу автоматически во всех статьях сайта на Вордпресс.

Рекламный код:

<div id="numblock_39">загрузка...</div>

<script type="text/javascript">
document.write('<scr'+'ipt language="javascript" type="text/javascript" src="http://w977.beget.tech/myout.php?g=39"></scr'+'ipt>');
</script>

Функция, взятая из интернета, для файла functions.php :

function inject_ad_text_after_n_chars($content) {

// реклама отображается при условии, что пост имеет 1000 и более символов
$enable_length = 1000;
// реклама отображается после первого тега </p> после 500 символов
$after_character = 500;
if (is_single() && strlen($content) > $enable_length) {
$before_content = substr($content, 0, $after_character);
$after_content = substr($content, $after_character);
$after_content = explode('</p>', $after_content);
$text = '
<!-- ЗДЕСЬ ВАШ КОД -->
';
array_splice($after_content, 1, 0, $text);
$after_content = implode('</p>', $after_content);
return $before_content . $after_content;
}
else {
return $content;
}
}
add_filter('the_content', 'inject_ad_text_after_n_chars');

Вместо <!-- ЗДЕСЬ ВАШ КОД --> вставляю рекламный код, сохраняю functions.php - и в результате в середине всей статей вижу только надпись "Загрузка...".

В чем дело? Синтаксис неверный? Подскажите пожалуйста, как исправить.

MS
На сайте с 21.07.2008
Offline
203
#1

http://w977.beget.tech/myout.php?g=39 - не открывается урл этот.

Ссылки с топовых сайтов (BusinessInsider, HealthLine, Cosmopolitan, etc) для ваших белых проектов - https://searchengines.guru/ru/forum/1039568
[Удален]
#2
MariaKo:
Добрый день!

Есть задача разместить тизерную рекламу автоматически во всех статьях сайта на Вордпресс.
Рекламный код:

<div id="numblock_39">загрузка...</div>
<script type="text/javascript">
document.write('<scr'+'ipt language="javascript" type="text/javascript" src="http://w977.beget.tech/myout.php?g=39"></scr'+'ipt>');
</script>


Функция, взятая из интернета, для файла functions.php :

function inject_ad_text_after_n_chars($content) {
// реклама отображается при условии, что пост имеет 1000 и более символов
$enable_length = 1000;
// реклама отображается после первого тега </p> после 500 символов
$after_character = 500;
if (is_single() && strlen($content) > $enable_length) {
$before_content = substr($content, 0, $after_character);
$after_content = substr($content, $after_character);
$after_content = explode('</p>', $after_content);
$text = '
<!-- ЗДЕСЬ ВАШ КОД -->
';
array_splice($after_content, 1, 0, $text);
$after_content = implode('</p>', $after_content);
return $before_content . $after_content;
}
else {
return $content;
}
}
add_filter('the_content', 'inject_ad_text_after_n_chars');


Вместо <!-- ЗДЕСЬ ВАШ КОД --> вставляю рекламный код, сохраняю functions.php - и в результате в середине всей статей вижу только надпись "Загрузка...".

В чем дело? Синтаксис неверный? Подскажите пожалуйста, как исправить.

Честно если сказать не вижу большой пользы вставление блоков с помощью рандомизации, статьи разные и центр тоже. самый эффект это шторкод и карта кликов. И издателю прибыль и пользователю ненапряг глаза). если уже так хотите то воспользуйтесь плагинами для Wp там можно и в центре вставлять и после определенного слово и тп.

MK
На сайте с 22.09.2017
Offline
27
#3
minSEO:
http://w977.beget.tech/myout.php?g=39 - не открывается урл этот.

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

---------- Добавлено 03.12.2017 в 15:05 ----------

Noobas:
Честно если сказать не вижу большой пользы вставление блоков с помощью рандомизации, статьи разные и центр тоже. самый эффект это шторкод и карта кликов. И издателю прибыль и пользователю ненапряг глаза). если уже так хотите то воспользуйтесь плагинами для Wp там можно и в центре вставлять и после определенного слово и тп.

Такой плагин пробовала, спасибо. Ad man для Wordpress, Но то же самое - видно только слово "загрузка...".

Без плагина тизеры выводятся нормально, если вставить рекламный код в файл шаблона

NothingMatters
На сайте с 12.06.2017
Offline
45
#4
MariaKo:
специально изменила адрес, на всякий случай) код точно был рабочий с другим адресом, тизеры выводятся. просто не там где надо, не в середине статьи

---------- Добавлено 03.12.2017 в 15:05 ----------



Такой плагин пробовала, спасибо. Ad man для Wordpress, Но то же самое - видно только слово "загрузка...".
Без плагина тизеры выводятся нормально, если вставить рекламный код в файл шаблона

Ну так кавычки почините. В рекламном коде все ' замените на "

MK
На сайте с 22.09.2017
Offline
27
#5

Поменяла кавычки, теперь вообще ничего не выводится, даже "загрузка..." )

NothingMatters
На сайте с 12.06.2017
Offline
45
#6
MariaKo:
Поменяла кавычки, теперь вообще ничего не выводится, даже "загрузка..." )

Покажите что получилось.

MK
На сайте с 22.09.2017
Offline
27
#7

<div id="numblock_39">загрузка...</div>
<script type="text/javascript">
document.write("<scr"+"ipt language="javascript" type="text/javascript" src="http://w977812j.beget.tech/myout.php?g=39"></scr"+"ipt>");
</script>

Сейчас опять выводится "загрузка..."

но тизеров нет

NothingMatters
На сайте с 12.06.2017
Offline
45
#8
MariaKo:
<div id="numblock_39">загрузка...</div>

<script type="text/javascript">
document.write("<scr"+"ipt language="javascript" type="text/javascript" src="http://w977812j.beget.tech/myout.php?g=39"></scr"+"ipt>");
</script>


Сейчас опять выводится "загрузка..."
но тизеров нет

Значит надо смотреть что в html выводится, и в консоль на предмет ошибок. Без пациента не разобраться.

MK
На сайте с 22.09.2017
Offline
27
#9

В хроме в коде страницы урл подсвечивается зеленым, как будто он воспринимается как комментарий. Похоже на ошибку в написании, может в тех же кавычках

NothingMatters
На сайте с 12.06.2017
Offline
45
#10
MariaKo:


В хроме в коде страницы урл подсвечивается зеленым, как будто он воспринимается как комментарий. Похоже на ошибку в написании, может в тех же кавычках

Да, в кавычках дело. Надо так:

<div id="numblock_39">загрузка...</div>

<script type="text/javascript">
document.write("<scr"+"ipt language=\"javascript\" type=\"text/javascript\" src=\"http://w977812j.beget.tech/myout.php?g=39\"></scr"+"ipt>");
</script>

Вообще вместо $text=''; лучше использовать конструкцию вида:

$text = <<<END

<!-- тут код рекламы -->
END;

Тогда не придется заморачиваться на счет кавычек.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий