msAddLinked

Добавление связанных товаров в виде опций с увеличением цены.
Версия 0.5.0-pl
Дата выпуска 15.10.2024
Загрузки 362
Просмотры 9 752
Внимание, этот компонент требует версию MODX не ниже 2.3 !

Описание

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

ВАЖНО: в списке связанных выводятся только те товары, для которых в связях текущий товар или указанный сниппету msAddLinked.input является главным.

Сниппет msAddLinked.input

Предназначен для вывода списка связанных товаров и полей ввода. По умолчанию выводятся чекбоксы, но, в теории, можно задать любой тип, поддерживаемый атрибутом type тэга input.
Проверена корректная работа типов text, number. Если в этих полях ввода указывать число, опции к товару в корзине будут добавлены в соответствующем количестве.

<cut />
Параметры
НазваниеЗначение по умолчанию
Описание
&tpl
tpl.msAddLinked.inputЧанк оформления
&product0 (Текущий товар)ID главного товара
&link0 (Все связи)ID связи
&inputTypecheckboxТип поля ввода для каждого связанного товара
&priceTarget#priceСелектор HTML элемента для вставки измененной цены
&priceOrigTarget#msal_price_originalСелектор HTML элемента для получения изначальной цены
&fieldName pagetitleПоле ресурса для вывода названия
&toPlaceholder0Если указан этот параметр, то результат будет сохранен в плейсхолдер, вместо прямого вывода на странице


Сниппет msAddLinked.info

Предназначен для вывода в корзине и в письмах списка добавленных к товару опций.


Параметры


НазваниеЗначение по умолчанию
Описание
&tpl
tpl.msAddLinked.inputЧанк оформления
&key0 (Текущий товар)Ключ элемента в корзине
&fieldName pagetitleПоле ресурса для вывода названия


Пример вызова:
[[!msAddLinked.info? &option=`[[+option.msal]]`]]

В синтаксисе Fenom:
{$_modx->runSnippet('msAddLinked.info', ['option' => $product.options.msal])}

Если в корзине выводятся другие опции товаров, тогда следующий блок:
{foreach $product.options as $option}
    {var $options = $options ~ $option ~ '; '}
{/foreach}
или
{$product.options | join : '; '}

необходимо заменить на такой:
{foreach $product.options as $k => $option}
    {if $k != 'msal'}
        {var $options = $options ~ $option ~ '; '}
    {else}
        {$_modx->runSnippet('msAddLinked.info', ['option' => $product.options.msal])}
    {/if}
{/foreach}

Системные настройки

НазваниеЗначение по умолчанию
Описание
&msal_frontend_js
[[+jsUrl]]web/default.jsПуть к файлу JS
&msal_variablemsalНазвание переменной в опциях


Обсуждение компонента в сообществе MODX.PRO.

0.5.0-pl

  • Removed encryption guard

0.4.2-pl

  • Fixed calculate absolute discounts in JS

0.4.1-pl

  • Added support for percent discounts

0.4.0-beta

  • Improved work with msOptionsPrice2
  • Added encryption

0.3.9-beta

  • Added abitility to use custom field for options price

0.3.8-beta

  • Fixed radio type behaviour

0.3.7-beta

  • Removed price round in JS

0.3.6-beta

  • Fixed ability to show option cost instead of price

0.3.5-pl

  • Fix &showCost snippet parameter

0.3.4-pl

  • Added ability to show option cost instead of price

0.3.3-pl

  • Added ability to format prices by MS2
  • Small fix PHP notify in msAddLinked.info snippet

0.3.2-pl

  • JS fix for JQuery 3.0+

0.3.1-beta

  • Added ability to store info about options in order comment
  • Some small fixes

0.3.0-beta2

  • Some small fixes

0.3.0-beta

  • Added ability to use with pdoPage and mSearch2

0.2.1-pl

  • Fixed calculate price if no options found

0.2.0-pl3

  • Added ability to recalculate price at document ready event

0.2.0-pl2

  • Fixed use of an array of field names

0.2.0-pl

  • Added ability to use discount for options

0.1.0-pl

  • Added ability to use input radio

0.1.0-rc

  • Optimized logic and elements
  • Removed unnecessary snippet msAddLinked.Cart and outer chunks

0.1.0-beta2

  • Added price formatting at front-end
  • Fixed system settings

0.1.0-beta

  • Public release

Последние обсуждения в сообществе MODX.pro