Курсы

Разработка модулей 1С-Битрикс для Маркетплейс: Полное руководство

Разработка модулей 1С-Битрикс для Маркетплейс: Полное руководство

Создание модуля

Партнерские модули отличаются от стандартных модулей следующим:

  • ID модуля - полный код партнерского модуля, который задается в формате: код_партнера.код_модуля. Часть код_партнера постоянна для партнера (задается в карточке партнера). Часть код_модуля вводится партнером при добавлении нового модуля. Эти коды должны быть алфавитно-цифровыми, но первым символом не может быть цифра, и код неким образом должен соответствовать сути модуля. Например, для модуля форума желательно задать код forum. Тогда полный код будет mycompany.forum. Использование точки для разделения кода партнера и кода модуля необходимо, иначе ваш модуль не будет виден в списке установленных решений Marketplace, а попадет в список системных модулей, что является некорректной ситуацией. Важно! Код модуля обязательно должен быть задан в нижнем регистре, иначе не будет работать метод IncludeModule.

    Код не должен начинаться с цифры - это может помешать установке модуля. Также запрещается использование подчеркивания ” _ ”.

  • В файле /install/index.php кроме той информации, которая задается в любом стандартном модуле, необходимо еще указать:

$this->PARTNER_NAME = "Имя партнера - автора модуля"; 
$this->PARTNER_URI = "http://www.mysite.ru";

У клиента эта информация будет доступна в списке модулей.

Внимание! Модуль можно создавать в кодировках UTF-8 и Windows-1251.

Помните, что в Bitrix Framework принято, что версия не может быть равной 0, то есть 0.0.1 - минимальный номер версии.

Помните, что только языковые файлы из папки /ru/ конвертируются в кодировку сайта.

Примечание: Допускается наличие обфусцированных Обфускация (или запутывание кода) — приведение исходного кода или исполняемого кода программы к виду, сохраняющему её функциональность, но затрудняющему анализ, понимание алгоритмов работы и модификацию при декомпиляции.

Подробнее)… частей кода, при этом в описании модуля должна присутствовать информация о наличии такого кода.

Инфоблоки или таблицы БД?

При создании собственных модулей у разработчиков часто возникает вопрос: при написании собственного модуля что целесообразнее: использование инфоблоков или собственные таблицы? Ответ на этот вопрос зависит от решаемой задачи. Наличие в Bitrix Framework инфоблоков не означает обязательности их использования для реализации своих модулей.

Инфоблоки - это универсальность. По этой причине:

  • Инфоблоки часто избыточны по своим возможностям;
  • При использовании инфоблоков разработчик может работать с модулем как с обычным компонентом, не нужно дорабатывать API (и описывать его).

Собственные таблицы - это прежде всего производительность. Используя свои таблицы, разработчик:

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

Содержание главы:

  • Структура полной сборки модуля
  • Задание демо-режима для модулей
  • Обновления модулей
  • Размещение модуля в партнерской системе обновлений
  • Размещение модуля в административном меню
  • Решения типовых сайтов
  • Установка модуля
  • Частые ошибки
  • Пример класса для модуля
  • Пример создания модуля
  • Сборка обновлений собственного модуля
  • Дополнительно
  • Подсказки пользователям
  • Тестирование разработчиком решений для Marketplace

Курсы разработаны в компании «1С-Битрикс»

🚀 Нужна помощь с сайтом на 1С-Битрикс или Аспро?

Я работаю удалённо по всей России и СНГ. Узнайте цены и условия для вашего города:

Все регионы →