18  /  37

Работа с конструктором

Просмотров: 3274 (Статистика ведётся с 06.02.2017)

Модуль Mpbuilder позволяет начинать разработку модуля как «с нуля», так и выпускать обновление уже готового модуля для Marketplace.

Итак, приступим.

Шаг 1. Создание модуля из скрипта.

На первом шаге заполняются необходимые информация:

  • Заполняются группы полей данные о разработчике и данные о новом модуле;

    Внимание! Код партнера должен строго соответствовать тому, что выводится в карточке партнера. Код модуля заполняется латиницей. Название и описание будут выводиться в списке модулей. Все это подробно описано в документации для разработчиков.

  • Опция Переписать существующие файлы означает, что необходимо перезаписать информацию, если такой модуль уже установлен в системе;
  • При необходимости в группе настроек Компоненты модуля выбираются компоненты для включения в дистрибутив создаваемого модуля, т.е они должны быть установлены на текущей установке в папке /bitrix/components/. Эти компоненты будут скопированы в папку /install/ нового модуля. При установке автоматически скопируются из этой папки в /bitrix/components/, и соответственно удалятся при деинсталляции.

    Внимание! Все пользовательские компоненты должны находиться в папке /bitrix/components/. Системные компоненты находятся в папке /bitrix/components/bitrix/, содержимое которой обновляется системой обновлений и не должно изменяться пользователями. Об это подробно описано в документации по созданию компонентов 2.0.

  • Если у модуля имеются административные страницы, то с помощью кнопки Обзор... можно их включить в дистрибутив, они попадут в папку /admin/ нового модуля. При установке будут созданы ссылки на эти страницы в папке /bitrix/admin/. Кроме того, они появятся в основном административном меню.
  • Для перехода к следующему шагу служит кнопка Продолжить, после нажатия которой модуль появится в списке решений, и можно продолжать его разработку уже в ядре:


Шаг 2. Выделение языковых фраз.

На данном шаге происходит:

  • Сканирование всех php-файлов модуля, если в коде нового модуля имеются кириллические символы, то выводится список этих страниц.

    Система автоматически определяет кодировку utf8 или cp1251. В дальнейшем скрипты будут автоматически перекодированы в кодировку сайта (а перед архивацией - в cp1251, как требует документация).

  • Языковые фразы сохраняются в соответствующий lang-файл, а вместо фраз в код страниц модуля вставляется вызов GetMessage. В качестве ключа используется транслитерация исходной фразы - это позволяет в автоматическом режиме создавать понятные ключи:

    Будьте осторожны! В процессе такой работы исходный файл переписывается. При разборе учитывается html, php, js, css, \.

  • Языковой файл создается автоматически:

    • Если файл был редактирован, то новые фразы дописываются в конец.
    • Если фразы были в исходном файле (или ранее по коду), то они используются повторно.
    • Если ключи совпадают, в конце дописывается цифра.
    • Для скриптов папки /admin/ в самое начало скрипта дописывается код подключения ядра, если не был найден. Это необходимо для работы языковых функций.

    Таким образом, скрипт можно постоянно дорабатывать и применять выделение фраз повторно.


Шаг 3. Создание архива.

На данном шаге:

  • Все скрипты модуля будут сконвертированы в кодировку cp1251, затем будет создан архив .last_version.tar.gz в папке /bitrix/tmp/<название.модуля>/:

    Здесь можно изменить версию модуля в одноименном поле.

  • Далее файл .last_version.tar.gz необходимо загрузить в карточке партнера Marketplace.

  • После пробуем установить себе созданный модуль и дожидаемся, когда решение будет отмодерировано.

Шаг 4. Сборка обновления.

Данный шаг автоматизирует сборку обновлений любого модуля: все файлы модуля, измененные после даты, которая хранится в install/version.php, попадают в архив обновления. Также сборка обновлений проверяет дату изменения файлов в установленных компонентах, копирует их в папку модуля, затем помещает в архив с обновлением. В обновлении лежит файл updater.php, который обновляет компоненты на сайтах клиентов. Перекодировка файлов из cp1251 в utf8 и обратно происходит автоматически.

  • Если включить опцию Обновить дату и версию в ядре модуля, то исходный файл модуля будет переписан и следующие обновления будут собираться от текущей версии.
  • В поле Описание обновления добавляется текстовая информация по изменениям в обновлении.
  • В поле Скрипт обновления updater.php добавляется сам пользовательский скрипт обновления. По умолчанию в этом поле дан пример скрипта.
  • После нажатия кнопки Продолжить будет создан архив с обновлением /bitrix/tmp/<модуль>/<версия_модуля>.tar.gz, который необходимо будет загрузить в карточке партнера Marketplace.

Примечание: Шаги 2-4 можно повторять сколько угодно раз в процессе разработки и обновлении модулей.


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

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии