Для расчета стоимости доставки требуется знать общий вес товара, его стоимость и индекс города отправителя. Общий вес товара и его стоимость берется непосредственно в момент оформления заказа, индекс отправителя вы указываете самостоятельно в конфигурационном файле скрипта. Там же вы можете указать, какую стоимость отобразить пользователю: стоимость ценной посылки (максимальный вес до 20 кг) или стоимость бандероли первого класса (максимальный вес до 25 кг).
Кроме того, вы можете так же к стоимости доставки прибавить свою сумму. Можете даже это сделать с условием по весу. Например, при весе заказа до 10 кг прибавлять к стоимости доставки одну сумму, а при весе заказа более 10 кг прибавлять другую сумму.
Чтобы узнать стоимость доставки пользователю нужно только ввести адрес доставки. Т.к. все люди разные, вводят адреса по разному и т.к. свой индекс знает только каждый десятый, было принято решение использовать сторонний ресурс-помошник DaData.ru. Данный ресурс помогает пользователю ввести правильный адрес с помощью всплывающих подсказок, а нам - разработчикам - получить правильный индекс покупателя.
Сам расчет стоимости происходит на сервере PostCalc.ru - самый точный на сегодняшний день калькулятор по услугам, предоставляемых Почтой РФ. Даже на официальном сайте Почты России очень сильные расхождения в подсчете онлайн и непосредстевнно в отделении почтовой связи. Сервис PostCalc.ru будет для вас бесплатным, если запросов в сутки будет менее 500. Это не значит, что если будет выполняться 501 запрос, то вас отключат). Нет. Если по итогам месяца вы будете регулярно превышать 500 запросов в сутки, то автор этого сервиса попросит вас перейти на коммерческую версию (от 1 до 4 тысяч рублей в месяц в зависимости от кол-ва запросов).







<?if($PAGE_ID$=='checkout')?><link href="https://cdn.jsdelivr.net/jquery.suggestions/16.6/css/suggestions.css" type="text/css" rel="stylesheet" /><?endif?>Готово? Отлично. Теперь не покидая этой же страницы, но уже в самом конце перед тегом </body> добавим пару таких строк:
<?if($PAGE_ID$=='checkout')?> <!--[if lt IE 10]> <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/jquery-ajaxtransport-xdomainrequest/1.0.1/jquery.xdomainrequest.min.js"></script> <![endif]--> <script type="text/javascript" src="https://cdn.jsdelivr.net/jquery.suggestions/16.6/js/jquery.suggestions.min.js"></script> <script> var all_weight = '$ORDER_WEIGHT$'; var all_price = '$ORDER_TOTAL_RAW$'; </script> <script type="text/javascript" src="/js/postRF.min.js"></script> <?endif?>У вас все хорошо получается. Не перживайте. Осталось чуть-чуть :) Нужно перейти в Панель управления » Интернет-магазин » Способы оплаты, доставки, валюты и курсы. Листаем вниз до способов доставки. Жмем по ссылке "Добавить способ доставки", вводим название "Доставка Почтой РФ" и нажимаем на зеленую галочку рядом с полем чтоб сохранить. В поле ниже вставляем код:
<input id="address" placeholder="Введите полный адрес доставки" name="address" type="text" style="width:100%; display: none" />Теперь ставим галочку напротив пункта "Использовать модуль расчёта стоимости доставки". В выпадающем списке должно быть "Внешний калькулятор". Если все так, то сохраняем. На этом все. На всякий случай скриншот:
