Выбрать курс
50  /  115

Пресет товаров

Если вы хотите подключить компонент конфигуратора на странице товара и установить этот товар или несколько связанных с ним товаров как уже выбранные в конфигураторе, то вам необходимо использовать настройки пресета:

Пресет товаров

Указание самих товаров необходимо выполнить через код, который необходимо добавить перед кодом вызова компонента:

$GLOBALS["confPreSet_".$arResult["ID"]] = Array(
109 => Array(
Array(
"ID" => 36919,
"QUANTITY" => 1,
)
),
111 => Array(
Array(
"ID" => 37302,
"QUANTITY" => 1,
),
Array(
"ID" => 34214,
"QUANTITY" => 2,
)
),
);

Рекомендуется добавлять к имени массива идентификатор основного товара "confPreSet_".$arResult["ID"]

109 и 111 - идентификаторы шагов конфигуратора. Каждый товар описывается как массив с идентификатором и количеством. Если шаг множественный, то ему можно передать несколько товаров.

ID товаров можно получить с помощью API 1С-Битрикс. Для этого необходимы знания программирования.

Далее представлен вариант с разными условиями сверки с идентификатором раздела, к которому принадлежит товар:

$presetArray = [];
switch($arResult["IBLOCK_SECTION_ID"])
{
	case(1913):
		//для товаров из раздела с идентификатором 1913 указать текущий товар в количестве 1 для шага с идентификатором 184
		$presetArray[184] = Array(
			Array(
				"ID" => $arResult['ID'],
				"QUANTITY" => 1,
			)
		);
		break;
	case(1914):
	case(1915):
		//не указывать пресет для товаров из разделов 1914 и 1915
		break;
	default:
		//выполнить поиск среди шагов, у которых основной раздел указан как у текущего товара и если найдено, то добавить товар в найденный шаг
		if(CModule::IncludeModule('webprostor.configurator'))
		{
			$stepInfo = Webprostor\Configurator\StepsTable::getList([
				'limit' => 1,
				'filter' => ['SECTION_ID' => $arResult["IBLOCK_SECTION_ID"]],
				'select' => ['ID'],
			])->fetch();
			if($stepInfo)
				$presetArray[$stepInfo['ID']] = Array(
					Array(
						"ID" => $arResult['ID'],
						"QUANTITY" => 1,
					)
				);
		}
		break;
}
$GLOBALS["confPreSet_".$arResult["ID"]] = $presetArray;

Переменная $arResult инициируется в стандартном компоненте для битрикс "Элемент каталога".

Прежде, чем обращаться в техподдержку или писать комментарий к модулю типа "У меня ничего не работает!", обязательно сделайте следующее:
  1. Проверьте свой сайт на наличие ошибок "Настройки / Инструменты / Проверка системы". Все тесты должны быть пройдены успешно!
  2. Проведите проверку "Настройки / Производительность / Панель производительности". Производительность сайта должна соответствовать эталону 30 или больше. Не должно быть ошибок.
  3. Версия PHP должна быть не ниже 8.1.
  4. На сайте должны быть установлены последние стабильные обновления для всех модулей 1С-Битрикс!
  5. У вас должна быть активная лицензия 1С-Битрикс.
  6. Должна быть установлена последняя стабильная версия модуля.
  7. Работа агентов должна быть переведена на cron.
  8. Изучите имеющуюся инструкцию к решению.
Для бесплатных решений:
  1. Поддержать разработку бесплатных решений.
  2. Предложения по улучшениям можете оставить в отзывах или обсуждении к решению.
Для платных решений:
  1. Телефон для связи +7 916 276-20-86
  2. Техподдержка https://webprostor.ru/support/tickets/
Внедрение платных решений:
  1. Для установки и настройки приобретенных решений (купон должен быть уже активирован) необходимо предоставить данные от сайта (Админ-панель, FTP) в службу техподдержки на странице https://webprostor.ru/support/tickets/
  2. Предоставьте краткое техническое задание, как именно вы хотите использовать выбранное решение.
  3. Стоимость внедрения зависит от затраченного времени. Действующий тариф вы можете уточнить у сотрудников. Минимальное учитываемое время - 1 час.
Установка готовых сайтов:
  1. Стоимость установки и первоначальной настройки готового сайта - бесплатно.
  2. Стоимость наполнения сайта текстовой и графической информацией, не входящей в перечень настраиваемых на этапе установки параметров - рассчитывается отдельно.
  3. Для установки и настройки приобретенных решений (купон должен быть уже активирован) необходимо предоставить данные от сайта (Админ-панель, FTP) в службу техподдержки на странице https://webprostor.ru/support/tickets/
  4. Предоставьте контактную информацию о вашей фирме и материалы брендбука.