Лучший комментарий для uCoz
827материалов
228тем на форуме
3004комментария
6161пользователь

Лучший комментарий для 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
Материал просмотрен: 1969 раз
Категория материала: Скрипты для uCoz
К материалу оставлено: 15 комментариев

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

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


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
Не за что! Если что, обращайтесь
avatar
СПС всё круто, а для каталога сайтов можно, плизззз
Albina-Danes
Найдите в коде:
Код
/load/$CID$-"+cpage+"-0-$ID$-0

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

Должно подойти
avatar
СПС помогло
avatar
Скрипт сырой.Не проработана та часть ,к примеру если комментариев на две страницы имею ввиду 1-5 и так далее,если комментарий оценили на странице 1-5 ,то он там покажет себя ,а если переключить на 2-5 страницу ,там не чего не будет ))
Ромчик
Ни каждой странице показывается свой лучший комментарий
avatar
Буду приятно удивлён если доведёте эту часть до ума) like
Ромчик
Мы не занимаемся персональной доработкой, но Вам помогут на - https://upartner.pro/
avatar
Анонимно 08.10.2016 18:3914
Согласен. Логично когда лучший комментарий к статье только один, а не на каждой странице разный. Скрипт можно считать полурабочим )))
Ромчик
Мы не занимаемся персональной доработкой, но Вам помогут на - https://upartner.pro/
avatar
Вход через социальные сети
Работа в компании uCoz
uSocial - социальные кнопки
uLike – кнопка «Мне нравится»
Статистики нашего сайта