Редактор темы

Вопрос? Как сделать детальный рейтинг типа "7.6"?

Mr.Smith

PRO Users
Регистрация
5 Ноя 2017
Сообщения
96
Рейтинг реакций
5
Баллы
18
1/3
Автор темы
Здраствуйте форумчане.
Подскажите как сделать более подробный рейтинг на 10 звездах, с одной цифрой после основного рейтинга (6.3 / 7.8 / 9.1 и т.д.). + с выводом в шаблоне по тегу {rating_nums}

При возможности с подсказкой к чему и как крепить стили, к примеру чтобы сделать пол звезды.

Интересует именно изменения в штатном рейтинге, без приминения других модулей.
 
Т.е. {rating_nums} должен выводить максимум только десятичное значение рейтинга?
 
Автор темы
Т.е. {rating_nums} должен выводить максимум только десятичное значение рейтинга?
Да. К счастью я уже решил этот вопрос.
Могу поделиться решением если необходимо. Или можете удалить тему.

В любом случае, спасибо за попытку помощи!
 
Да. К счастью я уже решил этот вопрос.
Могу поделиться решением если необходимо. Или можете удалить тему.

В любом случае, спасибо за попытку помощи!

Делитесь решением !
 
Oooops что-то на подобии этого:
Код:
$tpl->set( '{rating_nums}', round($row['vote_num'],2));
 
Автор темы
Делитесь решением !
Открываем файл functions.php в папке /engine/modules/, находим:
PHP:
if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 0 );
Заменяем на:
PHP:
if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 1 );

Добавляем вывод нужной оценки тегу {rating_nums}
1. Открываем файл show.full.php в папке /engine/modules/ находим строчку:
PHP:
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], $user_group[$member_id['user_group']]['allow_rating'] ) );
После нее вставляем:
PHP:
$tpl->set('{rating_nums}', str_replace(",", ".", round($row['rating'] / max(1,$row['vote_num']),1)));
2. Открываем файл show.short.php в папке /engine/modules/ находим строчку:
PHP:
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], 1 ) );
После нее вставляем:
PHP:
$tpl->set('{rating_nums}', str_replace(",", ".", round($row['rating'] / max(1,$row['vote_num']),1)));
3. Действия из шага 2 в точности повторяем уже с файлом show.custom.php, который также находится в папке /engine/modules/.
 
Открываем файл functions.php в папке /engine/modules/, находим:
PHP:
if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 0 );
Заменяем на:
PHP:
if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 1 );

Добавляем вывод нужной оценки тегу {rating_nums}
1. Открываем файл show.full.php в папке /engine/modules/ находим строчку:
PHP:
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], $user_group[$member_id['user_group']]['allow_rating'] ) );
После нее вставляем:
PHP:
$tpl->set('{rating_nums}', str_replace(",", ".", round($row['rating'] / max(1,$row['vote_num']),1)));
2. Открываем файл show.short.php в папке /engine/modules/ находим строчку:
PHP:
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], 1 ) );
После нее вставляем:
PHP:
$tpl->set('{rating_nums}', str_replace(",", ".", round($row['rating'] / max(1,$row['vote_num']),1)));
3. Действия из шага 2 в точности повторяем уже с файлом show.custom.php, который также находится в папке /engine/modules/.



Спасибо большое !!! слов нету как тебя облагодать... Я искал этот способ целый месяц, не кто подсказать не мог. А тут все сработало! От души
 
Автор темы

Похожие темы Последние темы Популярные темы

Назад
Сверху