Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по PHP Обертка N-го количества комментариев

Обертка N-го количества комментариев


     26.04.2013    Общие вопросы по PHP, Модули, Хаки    1653

вопрос
Добрый день. Прошу подсказать мне как правильно сделать одну вещь.
Мне нужно, допустим первые три комментария (свежо добавленные), на сайте, обернуть в некий код, пусть это будет обычный див.

Пример:

<div class="comm">
Свежие, 3 комментария.
</div>


А тут пойдут комментарии дальше.
Знаю что это делается с помощью массива, но как реализовать понять не могу. Буду благодарен за помощь.

Ответил: Sander


Открыть файл engine/classes/comments.class.php
Найти строку:
$this->intern_count ++;

После нее вставить:
if($this->intern_count==1) $tpl->result['comments'] .= "<div class='comm'>";
elseif($this->intern_count==4) $tpl->result['comments'] .= "</div><!--googleoff: all--><!--noindex-->";

Далее найти первую найденную строку:
$tpl->clear();

После нее вставить:
$tpl->result['comments'] .= "<!--/noindex--><!--googleon: all-->";


PS. Не учитывается навигация в комментариях.

Комментарии пользователей (7)

nowheremany
193

1660 | 1292

nowheremany - 26 апреля 2013 15:36 - Эксперт

Можно попробовать так
$('#dle-comments-list [id^=comment-id]:lt(3)').wrap('<div class="comm" />')

Благодарность принимаю тут Связь

Dark5ider
48 | 34

Dark5ider - 26 апреля 2013 17:44 - Эксперт

Для изменения свойств css у первых трех элементов оберните их все (в шаблоне естественно) в

<div class="comm" /></div>


и используйте псевдокласс:

.comm:nth-child(-n+3) { }

SmoL
23 | 7

SmoL - 26 апреля 2013 18:04 - Юзер

Спасибо за ответы, но мне в принципе не нужно присваивать им там класс, мне нужно просто комментарии разбить на две части, пример тогда сделаю такой:
<div class="comm" />
Коммент 1
Коммент 2
Коммент 3
</div>

<!--googleoff: all--><!--noindex-->
Коммент 4
Коммент 5
<!--/noindex--><!--googleon: all-->

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

SmoL
23 | 7

SmoL - 26 апреля 2013 18:12 - Юзер

тогда когда
Коммент 1
Коммент 2
Коммент 3
это свежие комментарии, те что были добавленные к новости последними.
Сорри за даблпост не знаю как редактировать.

ПафНутиЙ
1065

3396 | 2434

ПафНутиЙ - 26 апреля 2013 18:52 - Админ

для исходного кода используйте первую кнопку в редакторе.
А вообще нужно было изначально это описать в вопросе, что штука нужна для роботов, а не любдей, это разные вещи :)

Каков вопрос - таков и ответ. Просто помните об этом.

SmoL
23 | 7

SmoL - 26 апреля 2013 19:55 - Юзер

ПафНутиЙ, прошу прощения, думал что если меня просто направят в нужное русло додумаюсь и доделаю сам.

ПафНутиЙ
1065

3396 | 2434

ПафНутиЙ - 26 апреля 2013 20:12 - Админ

Да, всегда так и происходит))

Каков вопрос - таков и ответ. Просто помните об этом.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

 29.08.2011 nowheremany  Общие вопросы по PHP