Блог
Делюсь опытом разработки высоконагруженных проектов на 1С-Битрикс, рассказываю про архитектуру, интеграции и бизнес-логику.
Как обернуть цепочку Table::add в startTransaction на 1С-Битрикс?
Когда нужна транзакция Connection vs одиночный CRUD. Шаблон try/catch, Result→Exception, смешанные ORM+SQL, SAVEPOINT main 22.200.0, чек-лист staging.
Как повесить onBeforeAdd на DataManager в 1С-Битрикс и отменить add через addError?
Карта 9 событий ORM, onBeforeAdd в *Table с modifyFields и addError, validators vs onBefore, подписка ORM\EventManager. Отличие от AddEventHandler, чек-лист prod.
Как связать таблицы в D7 ORM 1С-Битрикс через Reference и runtime?
Практический гайд: Reference в getMap, runtime ReferenceField, Join::on(this/ref), select с точкой, цепочка 3+ таблиц, LEFT vs INNER, чек-лист getQuery и защита от N+1.
Как работать с Highload-блоком через D7 ORM: compileEntity, getList, add и delete?
Пошаговый CRUD для Highload в 1С-Битрикс CMS: compileEntity, HLBlockFactory, getList с UF_*, add/update/delete с isSuccess(). Отличие от инфоблока и своей таблицы.
Как создать агента в своём модуле 1С-Битрикс через CAgent::AddAgent?
Пошагово: lib/Agent.php, CAgent::AddAgent в InstallDB, обязательный return строки вызова и RemoveModuleAgents. Для CMS, не Bitrix24. Чек-лист и FAQ.
Как отправить HTTP-запрос к внешнему API из 1С-Битрикс через HttpClient?
Пошаговый гайд по исходящим HTTP-запросам на 1С-Битрикс: Управление сайтом. HttpClient D7, JSON POST, Bearer из Option, таймауты и отладка getStatus 0.
Как настроить D7-роутинг в 1С-Битрикс: local/routes/web.php?
Пошаговый гайд по D7 Routing в 1С-Битрикс CMS: routing_index.php, секция routing в .settings.php, /local/routes/web.php и привязка к Engine\Controller без поломки ЧПУ.
Как сделать AJAX-контроллер в 1С-Битрикс через BX.ajax.runAction?
Пошагово: lib/Controller/ в модуле, configureActions с prefilters, вызов BX.ajax.runAction и отладка Invalid csrf / DefaultController в Network.
Как загрузить и сохранить файл в 1С-Битрикс: CFile::MakeFileArray, SaveFile и D7 FileTable
Гайд по загрузке файлов на CMS: MakeFileArray, SaveFile, MODULE_ID, замена old_file/del, D7 FileTable и диагностика пустого $_FILES и post_max_size. Не Bitrix24.
Как настроить параметры своего модуля в 1С-Битрикс через options.php?
Пошаговый гайд: default_option.php, options.php, Option::get/set и check_bitrix_sessid. Чиним пустые настройки после установки модуля на CMS 1С-Битрикс.