• Автор:

    Ash Williams
  • Добавлено:

    фев 07, 2017
  • Комментариев:

    1
  • Просмотров:

    761

Хак Улучшаем рейтинг материалов Dle + выводим общую оценку в нужном месте

Хак Улучшаем рейтинг материалов Dle + выводим общую оценку в нужном месте

1. Стандартный рейтинг звездами в Dle показался нам не совсем точным;
2. Нам потребовалось вывести числом общую оценку рейтинга в нужном нам месте.

Первую мы смогли обнаружить с помощью второй проблемы, когда вывели число рейтинга, который показывал нам оценку 4.7, в то время, как звезды показывали нам показатель в 4.5. Решить обе проблемы нам удалось, и сейчас мы расскажем вам, как мы это сделали.

Повышаем точность рейтинга

Для того чтобы сделать ваш рейтинг более точным, выполним следующее:

1. Открываем файл functions.php в папке /engine/modules/, на 281 строке находим:
if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 0 );
else $rating = 0;
if ($rating < 0 ) $rating = 0;
$rating = $rating * 20;


2. И заменяем все на:
if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 1 );
else $rating = 0;
if ($rating < 0 ) $rating = 0;
$rating = floor($rating * 20);


Вот такими манипуляциями мы сделали наш рейтинг более точным.
Выводим общую оценку рейтинга

Для того чтобы вывести в нужном месте общую оценку рейтинга числом, делаем следующее:

1. Открываем файлы show.short.php и show.full.php и папке /engine/modules/ находим строчку:
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], $user_group[$member_id['user_group']]['allow_rating'] ) );


2. После нее вставляем:
$tpl->set( '{rating_nums}', str_replace(",",".",round($row['rating']/max(1,$row['vote_num']),1)));


На сайте, в нужном вам месте используйте тег {rating_nums} для вывода общей оценки

Важное замечание, 1 здесь – это сколько должно выводиться знаков после запятой, то есть рейтинг будет в виде 4.7, если вы измените 1 на 2, то будет, например, 4.67.

Ну вот вроде и все, мы с вами сделали небольшой апгрейд стандартного рейтинга Dle, тем самым повысив точность показателей и сделали возможность вывести оценку рейтинга числом в нужном месте.
dle
Вернуться

Комментарии:


  1. legallaz → 15 апреля 2017 16:50
    А как сделать ещё более точным, просто он всё равно врёт.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.