Курсы обучения
+7 (351) 777-80-70
2022.09.19

При использовании php 8 на главной странице не отображается виджет "Популярные товары"

При переходе на php 8 на главной странице может перестать отображаться виджет популярных товаров (при корректных настройках самого компонента).

Из-за этой же ошибки, как следствие, не будут отображаться и нижележащие (под виджетом) блоки, включая и футер.

Проблема возникает из-за того, что в php 8 в функцию round нельзя передавать пустую строку вместо 0.

Для исправления необходимо проверить в коде следующие моменты:

В файле

/bitrix/templates/prom_s1/components/bitrix/iblock­.vote/template.*/template.php
где *  — это номер используемого шаблона, необходимо добавить в секцию use:


use intec\core\helpers\Type;

А строку

$sVoteDisplayValue = $arResult['PROPERTIES']['rating']['VALUE'];

заменить на следующую:

$sVoteDisplayValue = Type::toFloat($arResult['PROPERTIES']['rating']['VALUE']);

Таким образом должно быть:


Наши решения