yorg

Как вставить код adsense внутрь статьи DLE с помощью jquery?

16 posts in this topic

Привет. Кто может подсказать как вставить код adsense внутрь статьи на DLE с помощью jquery?

Share this post


Link to post
Share on other sites

А зачем велосипед изобретать? Есть способ без jquery, причем не один.

Elektra likes this

Share this post


Link to post
Share on other sites

В настройках рекламного блока включаете опцию "Разрешить использование тега баннера в текстах новостей" и в нужном месте вашей новости ставите тег баннера (наприсер: {banner_header}).

Eloya likes this

Share this post


Link to post
Share on other sites

А можно просто скопировать код адсенс и вставить в fullstory.tpl

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

Elektra likes this

Share this post


Link to post
Share on other sites

Все эти способы не подходят, так как есть сайт и на нем больше 20 000 статей, мне что каждую статью редактировать что бы вставить тег? И в fullstory.tpl он и стоит, НО МНЕ НУЖНО В ЦЕНТР СТАТЬИ, а не вначале или конце, а именно в центе.

Share this post


Link to post
Share on other sites

Все эти способы не подходят, так как есть сайт и на нем больше 20 000 статей, мне что каждую статью редактировать что бы вставить тег? И в fullstory.tpl он и стоит, НО МНЕ НУЖНО В ЦЕНТР СТАТЬИ, а не вначале или конце, а именно в центе.

Мне кажется автоматически это сделать никак не получится, только руками. Если вдруг найдете рабочий способ - не забудьте поделиться в теме с остальными.

Elektra likes this

Share this post


Link to post
Share on other sites

Мне кажется автоматически это сделать никак не получится, только руками. Если вдруг найдете рабочий способ - не забудьте поделиться в теме с остальными.

Я видел на DLE такое уже, и знаю точно что это можно сделать с помощью

jquery

Share this post


Link to post
Share on other sites

Если контент добавляется через визивиг, то он разделяется на параграфы. Нужно посчитать количество параграфов в контейнере, в котором находится статья.

Например, если конструкция выглядит так:

<div class="dle_content">
И тут например текст статьи
</div>

То подсчитать можно так (лучше это делать в подключеном js файле):

var p_cnt = $('.dle_content p').length;

Соответственно, мы получаем количество параграфов в статье. Например мы хотим примерно в середине статьи разместить наш adsense блок. Мы делаем так:

var center = Math.round(p_cnt / 2);

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

Далее нужно просто вставить наш код после того параграфа, который определили выше, это может выглядить так:

$('.dle_content p').eq(center).append('наш код');

Готово. Но важно выполнить код после того как дом-дерево построено, это выглядит так:

$(document).ready(function()
{
Сюда вставляем наш код
});

Еще могут возникнуть сложности с тем, что при помощи append нельзя вставлять другой js код, это ограничения jquery. Т.е. любой текст и любой html вставить можно, но не js код. Но эту проблему можно легко решить (в интернете есть много обсуждений на эту тему). Если решение найти не удасться - пишите тут, я уже решал такую проблему, покопаюсь в проектах - найду.

 

Надеюсь помог.

zaws likes this

Share this post


Link to post
Share on other sites

Если контент добавляется через визивиг, то он разделяется на параграфы. Нужно посчитать количество параграфов в контейнере, в котором находится статья.

Например, если конструкция выглядит так:

<div class="dle_content">
И тут например текст статьи
</div>

То подсчитать можно так (лучше это делать в подключеном js файле):

var p_cnt = $('.dle_content p').length;

Соответственно, мы получаем количество параграфов в статье. Например мы хотим примерно в середине статьи разместить наш adsense блок. Мы делаем так:

var center = Math.round(p_cnt / 2);

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

Далее нужно просто вставить наш код после того параграфа, который определили выше, это может выглядить так:

$('.dle_content p').eq(center).append('наш код');

Готово. Но важно выполнить код после того как дом-дерево построено, это выглядит так:

$(document).ready(function()
{
Сюда вставляем наш код
});

Еще могут возникнуть сложности с тем, что при помощи append нельзя вставлять другой js код, это ограничения jquery. Т.е. любой текст и любой html вставить можно, но не js код. Но эту проблему можно легко решить (в интернете есть много обсуждений на эту тему). Если решение найти не удасться - пишите тут, я уже решал такую проблему, покопаюсь в проектах - найду.

 

Надеюсь помог.

Ну +- я понял, НО не до конца. Например: что мне прописать в файлах fullstory.tpl и main.tpl ???

Share this post


Link to post
Share on other sites

Это js, он выполняется после отработки шаблонизатора, таким образом не важно в каком шаблоне вы пропишите код, он будет работать всегда идентично.

Share this post


Link to post
Share on other sites

Это js, он выполняется после отработки шаблонизатора, таким образом не важно в каком шаблоне вы пропишите код, он будет работать всегда идентично.

Так что куда прописать???

Share this post


Link to post
Share on other sites

Никто не может мне помочь?

Share this post


Link to post
Share on other sites

Никто не может мне помочь?

Бог поможет. Особенно, учитывая твоё упорство.

Если ничего не придумаешь - просто встрой рекламный блок в начале статьи. Либо под тайтлом.

screenshot_3.png

fit-life.kz/6-volkov-aleksandr-seychas-ya-ischu-sponsora-dlya-otechestvennogo-basketbola.html

Share this post


Link to post
Share on other sites

Бог поможет. Особенно, учитывая твоё упорство.

Если ничего не придумаешь - просто встрой рекламный блок в начале статьи. Либо под тайтлом.

screenshot_3.png

fit-life.kz/6-volkov-aleksandr-seychas-ya-ischu-sponsora-dlya-otechestvennogo-basketbola.html

так мне не нужно, нужно в центе статьи. Вот нашел способ но он не работает:

 

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>

В фуллстори предлагаю разместить такой код:

$(document).ready(function()

{

    var p_cnt = $('.full-str br').length;

    var center = Math.round(p_cnt / 2);

    $('.full-str br').eq(center).append('<br><br><p>Вот тут будет баннер</p><br><br>');

});

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.