Задать вопрос Связаться с нами
  • Главная
  • Услуги
    • Исправление ошибок
    • Доработка сайтов
    • Обслуживание сайтов
    • Техподдержка сайтов
    • Веб-разработка
    • Интернет-магазины
  • Модули
    • Антирутин
    • SEO - мастер
    • SMS-уведомления
    • Утилиты от «Webdebug»
    • SMS-сообщения (Lite)

    • Все наши модули

    • Все модули Битрикс:Marketplace
  • Акции
  • Поддержка
  • Блог
  • О нас
    • Отзывы
    • Новости
    • Реквизиты

    • Контакты
  • Главная
  • Услуги
    • Исправление ошибок
    • Доработка сайтов
    • Обслуживание сайтов
    • Техподдержка сайтов
    • Веб-разработка
    • Интернет-магазины
  • Модули
    • Антирутин
    • SEO - мастер
    • SMS-уведомления
    • Утилиты от «Webdebug»
    • SMS-сообщения (Lite)

    • Все наши модули

    • Все модули Битрикс:Marketplace
  • Акции
  • Поддержка
  • Блог
  • О нас
    • Отзывы
    • Новости
    • Реквизиты

    • Контакты
Главная
Модули «1С-Битрикс: Маркетплейс»
Категория: Инструменты
Дополнительные единицы измерения для товаров
maxyss.measureunits

Дополнительные единицы измерения для товаров

Разработчиком данного модуля является MAXYSS
Купить: 3 000 руб. Онлайн-демо
  • Описание
  • Установка
  • История
  • Техподдержка

  • Подходящие редакции 1С-Битрикс: Малый бизнес, Бизнес
  • Включает в себя: Компоненты, Модуль
  • Категории: Для разработчиков, Для интернет-магазина, Инструменты, Другое, Другое
  • Название компании-партнера: MAXYSS
  • Последняя версия: 1.0.6
  • Дата обновления: 09.04.2024
  • Дата публикации: 30.07.2019
  • Число установок: Менее 50 раз
  • Адаптивность: Да
  • Поддержка композита: Нет
  • Совместимо с Сайты24: Нет

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

Внимание! Покупка товара осуществляется в базовых единицах измерения (то есть в  Корзине и Заказе товар будет лежать в единицах измерения, указанных в закладке Торговый каталог карточки товара)!

Внимание! Модуль и компоненты работают со штатными механизмами БУС добавления товаров в корзину! Если вы не уверены в том, на сколько сильно кастомизированы ваши текущие шаблоны компонентов, проконсультируйтесь предварительно в нашей техподдержке ДО ПОКУПКИ МОДУЛЯ!

После установки модуля зайдите в инфоблок товаров и создайте новое свойство типа “Коэффициенты единиц измерения” (множественное, необязательное), обязательно задайте код свойства (например UNIT_KOEF).

Заполните созданное свойство для товаров (в карточке элемента). Если не хватает нужных единиц измерения, создайте их здесь http://ваш_сайт/bitrix/admin/cat_measure_list.php?lang=ru

В визуальном редакторе найдите новый компонент maxyss  ->  Дополнительные единицы измерения

Чтобы в публичной части сайта у товара появились новые единицы измерения, нужно кастомизировать шаблоны компонентов bitrix:catalog.item (или bitrix:catalog.section для более старых версий ) и bitrix:catalog.element. (Внимание! Модуль и компоненты работают со штатными механизмами БУС добавления товаров в корзину! Если вы не уверены в том, на сколько сильно кастомизированы ваши текущие шаблоны компонентов, проконсультируйтесь предварительно в нашей техподдержке до покупки модуля!)

Кастомизация шаблона bitrix:catalog.section (старые версии): (например /bitrix/templates/components/bitrix/имя_шаблона_сайта/catalog.section /имя_шаблона_компонента/template.php)

Найдите строку содержащую переменную c объектом  JCCatalogItem (обычно это $obName)

Например,

var <? echo $strObName; ?> = new JCCatalogSection(<? echo CUtil::PhpToJSObject($arJSParams, false, true); ?>);

После этой строки разместите вызов компонента :

$APPLICATION->IncludeComponent(
     "maxyss:measure_unit",
     "",
     Array(
         "BX_BASCKET_OBJ" => $strObName,
         "CACHE_TIME" => $arParams["CACHE_TIME"],
         "CACHE_TYPE" => $arParams["CACHE_TYPE"],
         "MAIN_MEASURE_UNIT" => $arItem["ITEM_MEASURE"]["TITLE"],
         "MEASURE_BLOCK_SELECTOR" => ".bx_catalog_item_controls_blockone",
         "MEASURE_INPUT_SELECTOR" => ".bx_col_input",
         "MEASURE_RESULT" => $arItem["PROPERTIES"]["UNIT_KOEF"]
     ),
     $component
 );

Где:

  • Селектор блока количества: MEASURE_BLOCK_SELECTOR

  • Селектор поля количества: MEASURE_INPUT_SELECTOR

  • Ключ массива $item со свойством коэффициентов единиц измерения: MEASURE_RESULT

  • Код свойства дополнительных единиц измерения: UNIT_KOEF

  • Базовая единица измерения из $actualItem: MAIN_MEASURE_UNIT

  • Параметры кэширования лучше взять из настроек компонента catalog.element $arParams["CACHE_TIME"] и      $arParams["CACHE_TYPE"]

Кастомизация шаблона bitrix:catalog.item (новые версии): (например /bitrix/templates/components/bitrix/имя_шаблона_сайта/catalog. item /имя_шаблона_компонента/template.php)

Найдите строку, содержащую переменную c объектом  JCCatalogItem (обычно это $obName)

Например,

var <?=$obName?> = new JCCatalogItem(<?=CUtil::PhpToJSObject($jsParams, false, true)?>);

После этой строки (до строки  unset($item, $actualItem, $minOffer, $itemIds, $jsParams))  разместите вызов компонента

$APPLICATION->IncludeComponent(
     "maxyss:measure_unit",
     "",
     Array(
         "BX_BASCKET_OBJ" => $obName,
         "CACHE_TIME" => $arParams["CACHE_TIME"],
         "CACHE_TYPE" => $arParams["CACHE_TYPE"],
         "MAIN_MEASURE_UNIT" => $actualItem["ITEM_MEASURE"]["TITLE"],
         "MEASURE_BLOCK_SELECTOR" => ".product-item-amount",
         "MEASURE_INPUT_SELECTOR" => ".product-item-amount-field",
         "MEASURE_RESULT" => $item["PROPERTIES"]["UNIT_KOEF"]
     ),
     $component
 );

Где:

  • Селектор блока количества: MEASURE_BLOCK_SELECTOR

  • Селектор поля количества: MEASURE_INPUT_SELECTOR

  • Ключ массива $item со свойством коэффициентов единиц измерения: MEASURE_RESULT

  • Код свойства дополнительных единиц измерения: UNIT_KOEF

  • Базовая единица измерения из $actualItem: MAIN_MEASURE_UNIT

  • Параметры кэширования лучше взять из настроек компонента catalog.element $arParams["CACHE_TIME"] и      $arParams["CACHE_TYPE"]

Кастомизация шаблона bitrix:catalog.element: (например /bitrix/templates/components/bitrix/имя_шаблона_сайта/catalog.element/имя_шаблона_компонента/template.php)

Найдите строку содержащую переменную c объектом  JCCatalogElement (обычно это $obName)

Например,

var <?=$obName?> = new JCCatalogElement(<?=CUtil::PhpToJSObject($jsParams, false, true)?>);

После этой строки (до строки unset($actualItem, $itemIds, $jsParams))  разместите вызов компонента

<?$APPLICATION->IncludeComponent(
     "maxyss:measure_unit",
     "",
     Array(
         "BX_BASCKET_OBJ" => $obName,
         "CACHE_TIME" => $arParams["CACHE_TIME"],
         "CACHE_TYPE" => $arParams["CACHE_TYPE"],
         "MAIN_MEASURE_UNIT" => $actualItem["ITEM_MEASURE"]["TITLE"],
         "MEASURE_BLOCK_SELECTOR" => ".product-item-amount",
         "MEASURE_INPUT_SELECTOR" => ".product-item-amount-field",
         "MEASURE_RESULT" => $arResult["PROPERTIES"]["UNIT_KOEF"]
     ),
     $component
 );?>

Где:

  • Селектор блока количества: MEASURE_BLOCK_SELECTOR

  • Селектор поля количества: MEASURE_INPUT_SELECTOR

  • Ключ массива $arResult со свойством коэффициентов единиц измерения: MEASURE_RESULT

  • Код свойства дополнительных единиц измерения: UNIT_KOEF

  • Базовая единица измерения из arResult: MAIN_MEASURE_UNIT

  • Параметры кэширования лучше взять из настроек компонента catalog.element $arParams["CACHE_TIME"] и      $arParams["CACHE_TYPE"]

ДОБАВЛЕНА поддержка решения Аспро:Next - Интернет-магазин.

Пример вызова в шаблоне компонента списка товаров:

 <?$APPLICATION->IncludeComponent(    "maxyss:measure_unit",
    "aspro_list",
    Array(
        "BX_BASCKET_OBJ" => $arItemIDs,
        "CACHE_TIME" => "36000",
        "CACHE_TYPE" => "A",
        "MAIN_MEASURE_UNIT" => $arCurrentSKU[MEASURE],
        "MEASURE_BLOCK_SELECTOR" => '#'.$arItemIDs["strMainID"],
        "MEASURE_INPUT_SELECTOR" => ".counter_block .text",
        "MEASURE_RESULT" => $arItem["PROPERTIES"]["PROP_UNITS"],
        "ASPRO_MEASURE" => 'Y',
    )
);?>

Вызов необходимо осуществить в конце цикла <?foreach($arResult["ITEMS"] as $arItem){ ... }?>


Пример вызова в шаблоне карточки товара (расположить в конце):
<?$APPLICATION->IncludeComponent(
    "maxyss:measure_unit",
    "aspro_element",
    Array(
        "BX_BASCKET_OBJ" => $arItemIDs["strObName"],
        "CACHE_TIME" => "36000",
        "CACHE_TYPE" => "A",
        "MAIN_MEASURE_UNIT" => $actualItem["ITEM_MEASURE"]["TITLE"],
        "MEASURE_BLOCK_SELECTOR" => ".counter_block",
        "MEASURE_INPUT_SELECTOR" => ".counter_block .text",
        "MEASURE_RESULT" => $arResult["PROPERTIES"]["PROP_UNITS"],
        "ASPRO_MEASURE" => 'Y',
    )
);?>


  • 1.0.6, 09.04.2024
    Исправление вывода свойства в списке элементов
  • 1.0.5, 11.10.2023
    Исправления и улучшения
  • 1.0.4, 15.09.2023
    Исправление пересчета коэффициентов не равных 1
  • 1.0.3, 10.11.2022
    Изменения для решения Аспро:Next-интернет-магазин
  • 1.0.2, 22.04.2021
    Незначительные исправления
  • 1.0.1, 14.12.2019
    Добавлена поддержка решения Аспро:Next - интернет-магазин
Техподдержка только по электронной почте: info@maxyss.ru срок ответа до 3-х рабочих дней
Ссылки
  • Главная
  • Модули
  • Акции
  • Услуги
  • Отзывы
  • Блог
  • Новости
  • Контакты
  • Реквизиты
Поиск по сайту
Наши контакты

По всем вопросам обращайтесь:

Электронная почта: info@webdebug.ru

Telegram: webdebug

Форма обратной связи

Webdebug Bitrix certified
Webdebug QR-code
© ООО «Веб дебаг», 2011 – 2025. Политика конфиденциальности.
×
У Вас вопрос?
Загрузка ...
×
Связаться с нами
Загрузка ...
×
Установка модуля

Внимание! Повторная установка в демо-режиме приведет к окончанию демо‑режима и невозможности использовать модуль.

×
Запрос на приобретение
и настройку модуля
Загрузка ...