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

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

По умолчанию в DLE рейтинг выводит только целое число рейтинга от 1 до 5.
Повышаем точность стандартного рейтинга

Данный хак позволяет вывести рейтинг с точностью до 95%
Повышаем точность стандартного рейтинга

Открыть файл /engine/modules/functions.php
Найти 2 совпадения:
    if( $rating ) $rating = round( ($rating / $vote_num), 0 );
    else $rating = 0;
    $rating = $rating * 17;

Заменить на:
    if( $rating ) $rating = round( ($rating / $vote_num), 2 );
    else $rating = 0;
    $rating = floor($rating * 17);
Комментарии: (5)
  1. foto
    Клиент 20 августа 2016 21:17 #
    Подскажите, пожалуйста, как подобное реализовать в dle 10.6? Там код в functions.php отличается от представленного здесь.
    0
    1. foto
      Администратор 21 августа 2016 11:18 #
      Строку
      if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 0 );

      Заменить на
      if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 2 );


      И строку
      $rating = $rating * 20;

      Заменить на
      $rating = floor( $rating * 20 );


      Не проверял, но по идее должно работать.
      +1
      1. foto
        Клиент 21 августа 2016 12:22 #
        Заменил, попробовал выставить 2 оценки (4 и 5), но 4,5 так и не показывает. По-прежнему округляет до целых.
        0
        1. foto
          Администратор 21 августа 2016 12:43 #
          Проверил у себя. Все нормально
          +1
          1. foto
            Клиент 21 августа 2016 13:45 #
            Большое спасибо! Действительно всё работает) Попробовал выставить рейтинг от 2-ух разных зарегистрированных пользователей и всё получилось blush
            0
Добавить комментарий
  • Логин
  • E-mail (не обязательно)
Повторите рисунок:
antibot
© Sander-Development. 2009-2018.
При копировании, ссылка на источник обязательна.