регистрация
856материалов
3307комментариев
234темы на форуме
6953пользователя

Лучший комментарий для uCoz


Описание:

Хочу представить вам скрипт для вывода лучшего комментария на uCoz. Данная реализация работает только в "каталоге файлов", но передать её под остальные модулю не составит труда. Если будут проблемы или просто не будет получается, отписываемся в комментариях, помогу с установкой.

Установка:

Первым делом подключим сам скрипт поиска лучшего комментария к материалу (страница материала и комментариев к нему):
Код
<script type="text/javascript">$(document).ready(function(){ var countComPages = $('a.swchItem1').size(), bestRating = 0, divComRating = 0, ci, cpage; $(".commRating").each(function(i){divComRating++; if(parseInt($(this).html())>bestRating){bestRating = $(this).html(); $(".bestCom").html($(this).parent().closest('div.commOuter').html());} }); for(ci=0;ci<$('a.swchItem1').size();ci++){ cpage = $('a.swchItem1').eq(ci).attr('onclick').toString().split("('")[1].split("')")[0]; $.get("/load/$CID$-"+cpage+"-0-$ID$-0", function(data){ $(".commRating", data).each(function(i){ divComRating++; if(parseInt($(this).html())>bestRating){ bestRating = $(this).html(); $(".bestCom").html($(this).parent().closest('div.commOuter').html()); } }); }); }});</script>

Обратите внимание, что цифра (число) с рейтингом должна быть "обернута" в класс "commRating". Для этого переходим в "Вид комментариев", находим $COMMENT_RATING$ и изменяем его на:
Код
<span class="commRating">$COMMENT_RATING$</span>
(конечно же, можно просто добавить этот класс родительскому элементу).

Не уходим со странички с "Видом комментариев". Еще нужно в самое начало, перед всем кодом, добавить тег:
Код
<div class="commOuter">

а в самый низ закрывающий тег:
Код
</div>
Эту манипуляцию мы делаем для нахождения скриптом поля комментария.

Если вам, например, нужно вывести не все, а только текст комментария, можете поизменять следующую строчку $(".bestCom").html($(this).parent().closest('div.commOuter').html());, а именно closest('div.commOuter'). Этим кодом скрипт изменяет элемент с классом "bestCom" на родителя с классом "div.commOuter" лучшего значения комментария. Надеюсь, не сильно запутанно объяснил.

Теперь возвращаемся на страницу с материалом, и в месте, где бы вы хотели видеть "золотой" комментарий, вставляем следующий код:
Код
<?if($COM_NUM_ENTRIES$>3)?><b>Лучший комментарий:</b><div class="bestCom"></div><?endif?>
В условном операторе, "3" отвечает за то, сколько нужно комментариев к материалу, чтобы выводился лучший. В данном случае, не менее 4. Стили остаются за вами, можете изменить цвет фона на другой, добавить дополнительную рамочку. В общем, фантазируйте!


Скрипт опубликовал:
...
Логин на сайте: ...
Группа: ...
Статус: ...
Информация о скрипте:
Дата добавления материала: 20.09.2016 в 19:30
Материал просмотрен: 2604 раза
Категория материала: Скрипты для uCoz
К материалу оставлено: 13 комментариев

Пожаловаться
Сказать спасибо
Источник

13 комментариев


Karma
Lora @Karma 15.06.2014 13:521
+4
Здравствуйте, а как добавить в статьи? Что ни пробую, - не получается.
Romchik
Код
<script type="text/javascript">$(document).ready(function(){ var countComPages = $('a.swchItem1').size(), bestRating = 0, divComRating = 0, ci, cpage; $(".commRating").each(function(i){divComRating++; if(parseInt($(this).html())>bestRating){bestRating = $(this).html(); $(".bestCom").html($(this).parent().closest('div.commOuter').html());} }); for(ci=0;ci<$('a.swchItem1').size();ci++){ cpage = $('a.swchItem1').eq(ci).attr('onclick').toString().split("('")[1].split("')")[0]; $.get("/publ/$CID$-"+cpage+"-0-$ID$-0", function(data){ $(".commRating", data).each(function(i){ divComRating++; if(parseInt($(this).html())>bestRating){ bestRating = $(this).html(); $(".bestCom").html($(this).parent().closest('div.commOuter').html()); } }); }); }});</script>
Karma
Lora @Karma 15.06.2014 14:583
+1
Почему-то не получается всё равно.
Можно какой-нибудь демо-пример?
Romchik
Пример Вы можете посмотреть здесь. Еще раз напоминаю, лучший комментарий выводиться если: 1)на странице материала добавлено не менее 3 комментариев 2)рейтинг комментария больше 0
Karma
Lora @Karma 15.06.2014 15:305
+2
Всё получилось! Огромное спасибо!
Romchik
Роман @Romchik 15.06.2014 15:326
+4
Не за что! Если что, обращайтесь
q
СПС всё круто, а для каталога сайтов можно, плизззз
Albina-Danes
Найдите в коде:
Код
/load/$CID$-"+cpage+"-0-$ID$-0

И замените на:
Код
/dir/$CID$-"+cpage+"-0-$ID$-0

Должно подойти
q
СПС помогло
r
Скрипт сырой.Не проработана та часть ,к примеру если комментариев на две страницы имею ввиду 1-5 и так далее,если комментарий оценили на странице 1-5 ,то он там покажет себя ,а если переключить на 2-5 страницу ,там не чего не будет ))
Ромчик
Ни каждой странице показывается свой лучший комментарий
r
Буду приятно удивлён если доведёте эту часть до ума)
A
Анонимно 08.10.2016 18:3913
0
Согласен. Логично когда лучший комментарий к статье только один, а не на каждой странице разный. Скрипт можно считать полурабочим )))
avatar
uLike – кнопка «Мне нравится»
Создать сайт вместе с uKit.com
Статистики нашего сайта
Правила чата
Пользователи онлайн
Закрыть мини-чат
+Открыть мини-чат
0
Онлайн всего: 1
Гостей: 1
Пользователей: 0