msNovaPoshta

Расчет стоимости доставки «Новая Почта».
Автор дополнения
Prihod
Пакетов
16
Закачек
5 053
Обычно отвечает в течение 4 часов
Автор дополнения
Пакетов
16
Закачек
5 053
Обычно отвечает в течение 4 часов
Версия 1.0.9-beta
Дата выпуска 10.02.2020
Загрузки 119
Просмотры 4 918
Внимание, этот компонент требует версию PHP 5.6 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.
Внимание, этот компонент требует версию MODX не ниже 2.4 !
msNovaPoshta — позволяет рассчитывать стоимость доставки, с учетом веса заказа и стоимости всех товаров, а также просмотреть все отделений “Новая Почта” на карте Google в определенном городе и выбрать нужное.

Типы доставки:
от отделения до отделения,
от отделения до адреса.

Видео-обзор


Настройка
После того как вы установили пакет необходимо зайти в его настройки и указать там API ключ «Новая почта» который можно получить согласно инструкции.

Также крайне желательно получить свой ключ для API Google Maps, а не использовать который установлен по умолчанию т.к количество запросов в рамках одного ключа к сервису Google Maps ограничено.

Параметр “Тип груза” который по умолчанию “Посылка” влияет на расчет стоимости доставки поэтому если ваш магазин будет использовать другой то необходимо его тут выбрать.

В разделе “Адрес отправления” необходимо указать область и город откуда будет происходить отправление товара. На основании этих данных также будет происходить расчет стоимости доставки.

Cниппет msNovaPoshta.Order — расчет стоимости доставки и выбора отделения.

Параметры:
elements — cписок сниппетов через запятую, которые нужно запустить. По умолчанию msOrder,
tpl — Чанк оформления. По умолчанию msNovaPoshta.order,
theme — Название темы (js и css скрипты которые будут подключены на фронтенде). По умолчанию default,
zoom — Zoom для карты Google. По умолчанию 12

Cниппет msNovaPoshta.Order является ничем иным как оберткой, выполняет необходимые действия, данные выставляет в плейсходеры, затем запускает поочередно сниппеты из списка elements. Последним необходимо указать родной сниппет msOrder.

Пример вызова
[[!msNovaPoshta.Order]]

Важно!
Компонент предназначен для работы с miniShop2 версии >= 2.4.0.

Стоимость доставки в действительности может оказаться немного больше или меньше чем рассчитанная компонентом т/к в при ее расчете не учитываются такие показатели как кол-во упаковок, тип упаковки и т.д

Если у заказа не указан вес, то расчет будет происходить для 0.1 Кг.

События


msnpOnGetDeliveryCost — расчет стоимости доставки:
np — экземпляр класса дополнения
cost — стоимость заказанных товаров
weight — общий вес заказанных товаров
deliveryCost — стоимость доставки
deliveryId — id способа доставки
citySender — код города отправителя
cityRecipient — код города получателя
serviceType — тип услуги
cargoType — значение из справочника Тип груза: Cargo, Documents, TiresWheels, Pallet


Пример плагина:

switch ($modx->event->name) {
        case 'msnpOnGetDeliveryCost':
        if($cost > 1000) { // если стоимость заказанных товаров больше 1000 Гр. делаем доставку бесплатной
            $modx->event->returnedValues['deliveryCost'] = 0;
        }
        break;
    }



FAQ


Q: Каким образом передавать данные о доставке менеджеру в письме?
A: В чанк tpl.msEmail.new.manager добавить код

{if $properties.msnovaposhta.area? }<strong>Область:</strong> {$properties.msnovaposhta.area}{/if}
        {if $properties.msnovaposhta.city? }<strong>Город:</strong> {$properties.msnovaposhta.city}{/if}
        {if $properties.msnovaposhta.warehouse? }<strong>Отделение:</strong> {$properties.msnovaposhta.warehouse.Description}{/if}

msNovaPoshta 1.0.9

  • Исправлено: Список городов

msNovaPoshta 1.0.8

Добавлено: Событие "msnpOnGetDeliveryCost"

msNovaPoshta 1.0.7

  • Исправлено: Информация о заказе

msNovaPoshta 1.0.6

  • Исправлено: Общая стоимость заказа

msNovaPoshta 1.0.5

  • Исправлено: Дублирование ID элементов формы в чанке "msNovaPoshta.order". Добавлены постфиксы _courier и _pickup.

msNovaPoshta 1.0.4

Добавлено: Интеграция с msMultiCurrency

msNovaPoshta 1.0.3

  • Исправлено: Карта Google для устройств на iOS

msNovaPoshta 1.0.2

  • Исправлено: Список городов в заказе

msNovaPoshta 1.0.1

  • Добавлено: Возможность показать отделения с учетом веса заказа
  • Исправлено: Ошибка "caught TypeError: Cannot read property 'msnovaposhta' of null"
  • Исправлено: Дублирование городов

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