Отладка ошибок битрикс модулей

Отладка ошибок битрикс модулей

Отладка ошибок битрикс модулей Часто не понятно с чем связана ошибка модуля и каких ему в реальности не хватает входных параметров, так как в документации об этом может быть не сказано.
Для этого есть два способа.

1) Пишем в лог параметры модуля
На примере модуля каталог, ищем результирующую функцию
 public function getProductData(array $products)
{  return $this->getData($products);}

Временно заменяем на свой вариант и пишем в лог данные параметров:
 public function getProductData(array $arParams)
    {
        self::log($arParams, 'logs/_catalogpriceprovider.log');
        return parent::getProductData($arParams);
    }
Смотрим какие данные там есть и сравниваем с тем, что мы пытаемся туда передавать, добавляем те данные о которых нам стало известно.

2) Увидеть массив параметров необходимых для модуля

На примере модуля интернет-магазина хотим понять какие данные нужны для добавления скидки. В файле /bitrix/modules/sale/admin/discount_edit.php находим добавление скидки CSaleDiscount::Add

Добавляем принт данных:
 echo '<pre>';
print_r($arFields);
echo '</pre>';
die();


Добавляем новую скидку, и жмём сохранить, после этого смотрим массив $arFields, который нужен чтобы добавить скидку. Сверяем со своими данными и находим те данные которых не хватает.

Ещё статьи:

06.04.2022 Своё АПИ на сайте битрикс без модуля
Искал куда компонент спрятали и нашёл такую реализацию мини АПИ без модуля. ID: 333

18.03.2022 Получение минимальной цены и сохранение в свойство
Пополнение - пример события OnPriceUpdate для получение минимальной цены и сохранения в свойство инфоблока. ID: 332

12.02.2022 Проверка групп пользователя и исключение разделов
Пример события для проверки групп пользователя с целью исключить разделы из общего доступа ID: 331

© 2015-2022 Web админ
Связаться по WhatsApp