lapayshow/uplab.core

Uplab Core Gpart (LOODSEN VERSION)

dev-master / 1.0.x-dev 2023-08-07 09:36 UTC

This package is auto-updated.

Last update: 2024-04-07 11:08:11 UTC


README

Управление режимом работы модуля (продакшн / разработка)

Модуль определяет, в каком режиме работает сайт на основе белого списка доменов, редактируемого в настройках модуля. Если текущий домен находится в белом списке доменов, то модуль будет рабоать в режиме разработки. В этом режиме работает функция d(), выводящая содержимое переменной в консоль браузера.

Установка модуля, подключение модуля

Установка через boilerplate

Модуль uplab.core является частью системы boilerplate.bitrix Процесс разворачивания проекта "из бойлерплейта" в том числе предполагает установку модуля и его подключение.

"Ручное" подкюлчение модуля

Модуль следует устанавливать через composer. После установки модуля, необходимо

  • перейти на страницу "Установленные решения" в админке, убедиться, что модуль устанвлем
  • сгенерировать модуль проекта (чтобы сгенерировать модуль проекта, следует перейти в настройки модуля uplab.core: /bitrix/admin/settings.php?lang=ru&mid=uplab.core) и указать там два значения: нэймспэйс проекта (в CamelCase), например ProjectName и вторую часть названия модуля. По умолчанию это tools. В таком случае модуль будет называться projectname.tools, а его классы будут имть нэймспейс ProjectName\Tools.

После генерации модуля и его установки, в init.php следует добавить код:

<? 
// ...
/**
 * подключение модуля __projectModule__ (https://bitbucket.org/uplabteam/uplab.core):
 * - модуль сгенерирован автоматически с помощью модуля Uplab.Core
 * - автогенерация констант инфоблоков
 * - автогенерация констант форм
 * - вспомогательные классы для решения часто повторяющихся задач
 * подробнее: https://bitbucket.org/uplabteam/uplab.core
 */
\Bitrix\Main\Loader::includeModule("__projectModule__");

либо просто:

Bitrix\Main\Loader::includeModule("uplab.core");

Генерация констант

В модуле предусмотрен функционал генерации констант:

  • для информационных блоков
  • для форм

Константы генерируются автоматически на основе символьных кодов. Например, если инфоблок имеет символьный код sections-sliders, для него будет доступна SECTIONS_SLIDERS.

Константы хранятся в кеше битрикса, список констант можно просмотреть в настройках модуля (переключившись на вкладку "Константы").

Константы группируются по сайтам. На этой же вкладке в настройках можно задать для каждого сайта дополнительные константы (ключ-значение, в формате JSON). Чтобы обновить список констант, достаточно сохранить настройки модуля, либо сбросить кеш в битриксе.

Наполнение инфоблоков рыбными элементами

Для корректной работы следует установить phpQuery через composer:

composer require electrolinux/phpquery
<?php
$fill = new Uplab\Core\Iblock\Fill;
$iblockId = 1;
for ($i = 0; $i < 20; $i++) $fill->writeFishToIblock($iblockId);

Создание разделов по списку названий

Uplab\Core\Iblock\Fill::createSections(array(

"Сливочное",
"Экомилк",
"Альпийская коровка",
"Ромб",
"Луга Юга",
"Спред",
"Деревенское подворье",

), PRODUCTS_IBLOCK);

Экспорт / Импорт настроек форм инфоблоков

// Экспорт в файл. Путь к файлу выводится вместе с настройками в ответе метода
$ib = new Uplab\Core\Iblock\Tools(\Uplab\Core\Constant::get("DOCUMENTS_IBLOCK", "ru"));
$ib->exportFormSettings();
// импорт из файла: либо только название файла, либо полный путь от корня
$ib = new Uplab\Core\Iblock\Tools(\Uplab\Core\Constant::get("DOCUMENTS_IBLOCK", "en"));
$ib->importFormSettings("export_form_iblock_11_ee43c2.php");