Добавление типа информационного блока в Bitrix с помощью API

Следующий PHP код демонстрирует каким образом может быть создан тип информационного блока bitrix с помощью API.

Результат выполнения кода.

Результатом выполнения строчки с var_dump будет: string(7) "test123", то есть переменная $res будет содержать Id типа только что созданного информационного блока.

Так выглядит в административной панели Bitrix только что созданный через API тип информационного блока

На изображении выше есть галочка: "Использовать древовидный классификатор элементов по разделам", она в массиве $arFields устанавливается ключом SECTIONS установленным в Y.

Получение информации о типе информационного блока с помощью API

Есть такой метод как CIBlockType::GetByID который отчасти позволяет решить данную задачу, при этом я не буду его использовать, поскольку у данного метода не хватает русских названий связанных с типом информационного блока, при этом чтобы продемонстрировать что именно он делает, я приведу var_dump созданного выше по статье типа информационного блока, а именно следующий листинг содержит результат выполнения PHP-кода var_dump(CIBlockType::GetByID("test123"));

Таким образом для решения задачи будем использовать метод CIBlockType::GetByIDLang, который принимает 2 параметра: 1) Id типа информационного блока(в данном случаи test123) и идентификатор языка(в данном случаи en или ru), для примера приведу результат выполнения кода var_dump(CIBlockType::GetByIDLang('test123', 'ru'));

Если в методе CIBlockType::GetByIDLang передать ошибочный идентификатор языка(например e2) то будет возвращена информация для Русского языка, не зависимо от того в каком порядке передавалась информация для языков в массиве под клечом LANG. Если же передать Id не существующего типа информационного блока то метод CIBlockType::GetByIDLang вернёт false.

Следующий PHP код получает массив с информацией о типе информационного блока в том формате, в котором он может быть использован для создания типа информационного блока через API.

Результат выполнения var_dump($arFields); из листинга выше в рассматриваемом случаи будет иметь следующий вид.

Комментарии

Если у Вас возникли вопросы, Вы можете задать их в форме ниже. В частности если Ваш вопрос по Bitrix и что то не получается - можно спросить. Ваш e-mail не публикуется, при этом я отвечу на него если будет что то по теме. Писать необходимо для людей - избегайте сленга, пишите орфографически правильно.

Имя:
E-mail:
Текст комментария:

Вы так же можете прочитать следующие статьи: