Как убрать округление оценки товара в OpenCart?
По умолчанию, при написании отзывов о товаре и выставлении оценки о нем в системе выводится округленная средняя по всем оставленным рецензиям оценка. Но бывают случаи, когда мы хотим некой точности на сайте, и для этого вам может быть необходим вывод нескольких дополнительных знаков после запятой в общей оценке.
Решение для этого есть, и сейчас я расскажу, какое именно. Все изменения, описанные в статье, приведены на примере OpenCart версии 2.3.0.2. В вашем же случае, если версия движка отличается – пробуете сделать аналогичные замены.
1. Подключитесь к вашему сайту по FTP.
2. В папке /catalog/model/catalog/ откройте файл product.php. В нем найдите код:
round($query->row['rating'])
Замените его на:
$query->row["rating"]
Сохраните изменения и отправьте файл обратно на сайт.
3. Далее открываете файл product.php в папке /catalog/controller/product/. Здесь вы делаете три замены.
Первая – это:
$data['rating'] = (int)$product_info['rating'];
на:
$data["rating"] = number_format((float)$product_info["rating"], 1, ",", "");
Вторая – это:
$rating = (int)$result['rating'];
на:
$rating = number_format((float)$result["rating"], 1, ",", "");
И третья – это:
'rating' => (int)$result['rating'],
на:
"rating" => number_format((float)$result["rating"], 1, ",", ""),
После чего вы сохраняете изменения и отправляете файл обратно на сайт. Во всех заменах запятая – это знак разделения дроби от целой части, а единица – количество знаков, которое нужно выводить после запятой.
На этом все и до новых встреч!