Хочу представить вам скрипт для вывода
лучшего комментария на 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. Стили остаются за вами, можете изменить цвет фона на другой, добавить дополнительную рамочку. В общем, фантазируйте!
Установка завершена!