Если Ваш интернет-магазин интегрирован с 1С, скорее всего столкнулись с такой проблемой: 1С не умеет выгружать параметры товара: Вес, Ширина, Высота, Глубина.
Заполнение габаритов товара, после обмена с 1С, из свойств элемента инфоблока.
29.04.2019 11:22:49
Добрый день
Написал обработку для того что-бы из реквизитов товара брать вес и габариты торгового предложения. Если интересно вот ссылка |
|
|
15.08.2020 22:56:37
Но пусть тоже будет, у меня чуть иначе сделано и без ТП |
|||
|
19.08.2022 18:01:04
Тестил сегодня - все работает
<? function OnAfterIBlockElementUpdateAdd(&$arFields) { $el = new CIBlockElement; switch (SITE_ID ) { case 's1': $iBlockID = 12; break; case 's2': $iBlockID = 49; break; } $delivery_fields = array(); $db_props = CIBlockElement::GetProperty( $iBlockID, $arFields['ID'], array("sort" => "asc"), Array("CODE" => "CML2_TRAITS") ); while ($ar_props = $db_props->Fetch()) { switch ($ar_props["DESCRIPTION"]) { case 'Длина': $length = $ar_props['VALUE']; break; case 'Высота': $height = $ar_props['VALUE']; break; case 'Ширина': $width = $ar_props['VALUE']; break; } } $delivery_fields = array( 'LENGTH' => $length * 10, 'HEIGHT' => $height *10, 'WIDTH' => $width *10 ); \Bitrix\Catalog\Model\Product::update($arFields['ID'], $delivery_fields); } |
|
|
19.08.2022 18:05:35
'WIDTH' => $VALUES['3'] * 10,
'HEIGHT' => $VALUES['4'] * 10, 'LENGTH' => $VALUES['5'] * 10; Тут недочет - если из 1с не прийдет какое либо поле то ключи собьются и ваши габариты запишутся не туда, либо же к примеру прийдет еще 1поле - обьем, тогда 'WIDTH' => $VALUES['3'] * 10, уже будет не [3], а к [4] например, поэтому можно сравнивать по описанию полей Тестил сегодня - все работает
Изменено: |
|||
|
19.08.2022 18:28:52
В целом да. Если ключи собъются все поломается. Только и остается, проверять по точному названию поля.
Изменено: |
|
|
24.04.2024 12:18:07
можно использовать D7
|
||||
|
||||
Блог-note: заметки разработчика
Кнопка для отправки на печать карточки товара, без лишних данных
Задача: реализовать возможность печати карточки товара, но так что бы в ней не было не нужных данных: шапки и футера сай...
Установка вебсервера на Apple Silicon (нативный ARM стек), оптимизированный для 1С-Битрикс.
Появилась задачка, установить стек MAMP (macOS, Apache, MYSQL, PHP) на рабочий ноутбук с процессором Apple Silicon M1. В...
Получить множественное пользовательское поле раздела. Значения множественного UF_ поля через API
Задача: У разделов инфоблока есть множественное поле типа список. Зная ID раздела, нужно получить и вывести всю информац...
Прятать или показывать описание раздела каталога
В новых компонентах и шаблонах catalog.section есть не документированный и не выводимый параметр: "Скрывать описание раз...
Установить остатки товара на складе из доступных остатков.
Задача, заполнить остатки товаров, в 1С-Битрикс, из параметра "Доступное количество".
Denwer c PHP 7.1.8 и MYSQL 5.7 оптимизированный для Битрикс
В последнее время, все чаще приходиться работать на Windows, хотя и не люблю эту ОС- с точки зрения разработчика сайтов...
Умный фильтр на главной странице Битрикс
Редкая но востребованная задачка- это вывести компонент "умный фильтр" на главную страницу магазина на Битрикс. При этом...
Настройка выгрузки товаров в Яндекс Маркет с сайта Битрикс
Настройка выгрузки в Яндекс маркет в формате yml, выполняется достаточно просто, кроме одной заморочки: в типовой постав...
Получить и вывести пользовательские свойства склада в 1С-Битрикс
Задача: вывести пользовательские свойства в подробном описании склада. При этом, есть и множественные и одиночные поля.