Главная » Записи по метке: API

Метка: API

14 материалов

Схема методов объекта CDBResult в старом API 1С-Битрикс
CDBResult: Fetch, GetNext, NavStart и постраничка

Почти каждый метод старого API Битрикса — CUser::GetList, CIBlockElement::GetList, прямой запрос через $DB->Query — возвращает не готовый массив данных, а объект CDBResult. Разберём, как этот объект устроен и какие его методы регулярно путают между собой. Fetch vs GetNext <?php $result = CUser::GetList(‘ID’, ‘ASC’, []); // вариант 1 while ($row = $result->Fetch()) { echo $row[‘LOGIN’]; } // вариант 2 (для инфоблоков…

Полезное Обновлено: 23 августа 2026
Схема программного создания и настройки прав группы пользователей через CGroup в 1С-Битрикс
CGroup — группы пользователей из кода в Битрикс

Группы пользователей — не только контейнер для прав доступа в интерфейсе, но и сущность, которой можно управлять программно: создавать новые группы динамически, настраивать их права из кода, автоматически включать пользователей в нужные группы по бизнес-логике. Разберём класс CGroup. Создание группы программно <?php $group = new CGroup; $groupId = $group->Add([ ‘ACTIVE’ => ‘Y’, ‘C_SORT’ => 100, ‘NAME’ => ‘VIP-клиенты’, ‘DESCRIPTION’ =>…

Прочее Обновлено: 23 августа 2026
Схема ручного кеширования через CPHPCache в 1С-Битрикс
CPHPCache — ручное кеширование в Битрикс

До появления удобной обёртки Bitrix\Main\Data\Cache в D7, ручное кеширование в Битриксе строилось на классе CPHPCache. Он до сих пор встречается в старом коде и в некоторых сценариях остаётся рабочим вариантом. Разберём его устройство и чем он отличается от современной обёртки. Базовое использование <?php $cache = new CPHPCache; $cacheTime = 3600; $cacheId = ‘my_data_’ . $categoryId; $cacheDir = ‘/my_module/category/’; if ($cache->InitCache($cacheTime,…

Прочее Обновлено: 23 августа 2026
Схема истории изменений заказа через Bitrix Sale History в 1С-Битрикс
История заказа и лог изменений в Битрикс

Когда клиент спрашивает «а кто и когда поменял статус моего заказа» или «почему изменилась сумма», ответ должен опираться на реальную историю изменений, а не на память менеджера. Разберём, как устроен лог изменений заказа в 1С-Битрикс и как получить его программно. Штатный журнал истории заказа Модуль продаж D7 фиксирует историю изменений заказа автоматически — смену статуса, изменение состава корзины, изменение суммы…

Заказы Обновлено: 23 августа 2026
Схема пошаговой диагностики недоставленных писем в 1С-Битрикс
Отладка отправки писем в Битрикс: почему не уходят

«Письмо не пришло» — жалоба, за которой может стоять с десяток разных причин: от неправильного шаблона до банальной попадания в спам. Разберём системный порядок диагностики недоставленных писем в 1С-Битрикс, от самого вероятного к менее очевидному. Шаг 1. Проверка очереди писем Первым делом стоит проверить раздел Сервисы → Почтовые события → Просмотр событий — если письмо вообще не появилось в списке…

CEvent Обновлено: 23 августа 2026
Схема регистрации собственного почтового события с переменными в 1С-Битрикс
Свои поля в почтовом событии: передача параметров

Стандартных переменных штатных почтовых событий (заказ, регистрация) часто не хватает для нестандартной коммуникации — собственное событие с собственным набором полей закрывает эту потребность. Разберём, как зарегистрировать почтовое событие с произвольными переменными и передать в него нужные данные. Регистрация нового типа почтового события Собственное почтовое событие регистрируется через административную панель в разделе Сервисы → Почтовые события → Типы почтовых событий, где…

CEvent Обновлено: 23 августа 2026
Схема автоматического нанесения водяного знака на изображения через обработчик события в 1С-Битрикс
Водяной знак на изображениях через CFile в Битрикс

Защита изображений товаров от копирования конкурентами или продвижение бренда через логотип на каждой фотографии — типичная причина добавлять водяной знак при загрузке. Разберём, как реализовать автоматическое нанесение водяного знака на изображения в 1С-Битрикс. Обработчик события при сохранении файла <?php use Bitrix\Main\EventManager; EventManager::getInstance()->addEventHandler( ‘main’, ‘OnAfterFileSave’, function ($fileId) { $file = CFile::GetByID($fileId)->Fetch(); if (in_array($file[‘CONTENT_TYPE’], [‘image/jpeg’, ‘image/png’], true)) { addWatermark($file); } } );…

CFile Обновлено: 23 августа 2026
Схема формирования массива файла из URL через CFile::MakeFileArray в 1С-Битрикс
CFile::MakeFileArray — файл из пути или URL в Битрикс

CFile::SaveFile ожидает массив в определённом формате — но не всегда исходные данные приходят готовым файлом с диска. Разберём CFile::MakeFileArray, который упрощает подготовку такого массива из пути или URL, избавляя от ручного формирования структуры вручную. Базовое использование с локальным путём <?php $fileArray = CFile::MakeFileArray(‘/path/to/local/image.jpg’); $fileId = CFile::SaveFile($fileArray, ‘catalog’); MakeFileArray берёт на себя формирование массива с нужными ключами (name, type, tmp_name, size)…

CFile Обновлено: 23 августа 2026
Схема завершения сессии пользователя через CUser::Logout в 1С-Битрикс
CUser::Logout и завершение сессии в Битрикс

Завершение сессии пользователя выглядит как простая операция, но имеет несколько нюансов — от разницы между выходом текущего пользователя и принудительным завершением чужой сессии до того, что реально происходит с данными при вызове. Разберём CUser::Logout. Базовый вызов для текущего пользователя <?php global $USER; $USER->Logout(); LocalRedirect(‘/’); Logout() завершает сессию текущего авторизованного пользователя — удаляет данные авторизации из сессии и очищает связанные cookie….

CUser Обновлено: 23 августа 2026
Схема программного доступа к настройкам сайтов и языков через CSite и CLang в 1С-Битрикс
CSite и CLang — сайты и языки из кода в Битрикс

Классы CSite и CLang дают программный доступ к настройкам сайтов и языков установки — той же информации, что видна в административной панели через карточки сайтов и языковые настройки. Разберём их основные методы и типичные сценарии использования. Получение информации о текущем сайте <?php $siteId = SITE_ID; $site = CSite::GetByID($siteId)->Fetch(); echo $site[‘NAME’]; echo $site[‘SERVER_NAME’]; echo $site[‘EMAIL’]; Константа SITE_ID доступна в контексте выполнения…

Прочее Обновлено: 23 августа 2026
Услуги
Инструменты
База знаний