Расчет общей цены в корзине Shopkeeper3

@andchir аа ну все верно, да, 2 корзины, 1 корзина - это просто значок корзины в шапке, типа перейти в корзину, вторая корзина - это непосредственно при оформлении заказа.
Да. проблема с сохранением цены в заказе! Хотелось бы сделать, чтобы при нажатии кнопки "рассчитать", общая цена формировалась подобно изменениям способа доставки или количества товара! Спасибо!

@andchir Не подскажете как и где конкретно формируется общая цена $price_total? Просто в connector_fe.php я вообще убрал элемент массива 'price_total' => Shopkeeper::$price_total , но цена, все равно, нормально формируется в корзине.

Сам калькулятор я сделал, но считается он в корзине.

Сделали на JavaScript? Не боитесь. что кто-то понимающий придет и поставит себе нулевую доставку там где её быть не должно? Такие вещи нужно делать на стороне сервера или дублировать на стороне сервера. Поэтому нужно через плагин, а не плагину отправлять готовую цену.

Действительно! Именно поэтому паршивое чувство не отпускало, что что-то не так! Но, в таком случае, как поместить данные, введенные пользователем в плагин?

Эта запись удалена!

@andchir В общем, я пробовал по-разному добиться попадания параметров для расчета в плагин, но все как то не очень... через сессии - не вариант) Если Вы мне подскажете хотя бы как у Вас реализована функция обновления общей цены, допустим, при изменении количества товара? Просто не хотелось бы тратить много времени на изучение всей архитектуры приложения, если Вам не сложно, конечно!

я пробовал по-разному добиться попадания параметров для расчета в плагин

Что за параметр? Если это параметр товара, то надо брать из базы данных.

@andchir параметры доставки, которые укажет посетитель сайта для расчета! Ну, например, сайт по доставке сейфов. Если вес более 50кг то 10р за 1 кг будет стоимость доставки + 200р (если на лифте) либо + 100р за каждый этаж если нет лифта.
То есть, приблизительные параметры, которые надо передать в плагин:

  1. Общий вес всех товаров в корзине;
  2. Количество этажей;

Для обновления доставки есть JS-функция

SHK.selectDelivery('Название доставки')

Вот код:
https://github.com/andchir/shopkeeper3/blob/master/assets/components/shopkeeper3/web/js/shopkeeper.js#L846

Вы можете написать свою функцию, которая будет делать POST-запрос на URL:

SHK.options.site_base_url + 'assets/components/shopkeeper3/connector_fe.php'

с параметром shk_action: 'update_delivery' Потом в плагине ловить все данные из $_POST и устанавливать цену доставки.

Событие плагина - OnSHKgetDeliveryPrice. Он должен вернуть цену доставки.

Отлично! Это помогло! Спасибо!

Похоже, подключение к Форум | MODX Shopkeeper было разорвано, подождите, пока мы пытаемся восстановить соединение.