Настройки макета

Для дальнейших действий нужны минимальные знания работы с макетами, XSL-шаблонами (далее - XSL), типовыми динамическими страницами (далее - ТДС) в HostCMS. Работу должен выполнять Ваш программист или администратор сайта.

В главном макете Вашего сайта укажите функцию MegaPost_GeoIp::getCountryLocationCity() (php код перед <head>) и css стили/js скрипты для работы модуля (обычно в пределах тега <head></head>)

MegaPost_GeoIp::getCountryLocationCity() - для автоопределение города посетителя и записи в сессию (можно не указывать)

<?php
	// GeoIP определяет текущий город и сохраняет в $_SESSION['ASMP_City']
	MegaPost_GeoIp::getCountryLocationCity();
?>
<head>
	<!-- ... ваш код title и тд -->
	<?php
		Core_Page::instance()
			/* ... тут ваши css ... */
			->css('/hostcmsfiles/megapost/css/megapostXXXX.css')
			->showCss();
	?>
	<script type="text/javascript">var apikeymap = 'APIKEY_YMAP';</script>
	<?php
		Core_Page::instance()
			/* ... тут ваши js ... */
			/* все js megapost должны быть подключены после jQuery */
			->js('/hostcmsfiles/megapost/js/megapost.min.js')
			->js('/hostcmsfiles/megapost/js/mp.autocomplete.js')
			->js('/hostcmsfiles/megapost/js/megapost-scriptXXXX.js')
			->showJs();
	?>
</head>

Готовый пример можно увидеть в демо макете созданном после установки модуля

в css и js файлах XXXX - Ваш уникальный номер файла при установке, посмотреть можно в папке /hostcmsfiles/megapost/*/, т.к. все файлы без уникального номера при обновлении будут заменяться на новые

APIKEY_YMAP - ваш API ключ Яндекс Карт

Настройки в JS / megapost-scriptXXXX.js

callback: '/megapost/callback/' // путь callback командера для ajax MegaPost_Command_Controller
jMForm: '[data-megapost=true]' // селектор формы для инициалзиации MegaPost
mblock: '#mpDelivery' // селектор блока инициализации карты
cartOneStep: '[data-cartOneStep=true]' // селектор блока корзины
addressOneStep: '[data-addressOneStep=true]' // селектор блока контактных данных и адреса
deliveryOneStep: '[data-deliveryOneStep=true]' // селектор блока доставки
paymentSystemOneStep: '[data-paymentSystemOneStep=true]' // селектор блока оплаты
cityNameDiv: '.shop_country_location_city_div' // селектор блока города
inputCityName: 'input#shop_country_location_city_name' // селектор поля ввода города для подключени autocomplete
boxLoaderDelivery: '.boxLoaderDelivery' // селектор блока расчета доставок в карточке товара
boxLoaderPVZDelivery: '.boxLoaderPVZDelivery' // селектор блока расчета доставок с картой на отдельной странице
otherCityNameDiv: '.other_city_name_div' // селектор блока произвольного ввода города
otherCityTxt: '<span class="other_city">Ввести другой город (если в списке нет нужного)</span>' // селектор блока корзины
otherCity: true // показывать пункт "Ввести другой город", true - да, false - нет
svgLoader: '<svg class="loader" xmlns="http://www.w3.org/2000/svg" height="10" viewBox="0 0 100 20" fill="currentColor"><g transform="translate(20 10)"><circle r="6"><animateTransform attributeName="transform" begin="-0.375s" calcMode="spline" dur="1s" keySplines="0.3 0 0.7 1;0.3 0 0.7 1" keyTimes="0;0.5;1" repeatCount="indefinite" type="scale" values="0;1;0"/></circle></g><g transform="translate(40 10)"><circle r="6"><animateTransform attributeName="transform" begin="-0.25s" calcMode="spline" dur="1s" keySplines="0.3 0 0.7 1;0.3 0 0.7 1" keyTimes="0;0.5;1" repeatCount="indefinite" type="scale" values="0;1;0"/></circle></g><g transform="translate(60 10)"><circle r="6"><animateTransform attributeName="transform" begin="-0.125s" calcMode="spline" dur="1s" keySplines="0.3 0 0.7 1;0.3 0 0.7 1" keyTimes="0;0.5;1" repeatCount="indefinite" type="scale" values="0;1;0"/></circle></g><g transform="translate(80 10)"><circle r="6"><animateTransform attributeName="transform" begin="0s" calcMode="spline" dur="1s" keySplines="0.3 0 0.7 1;0.3 0 0.7 1" keyTimes="0;0.5;1" repeatCount="indefinite" type="scale" values="0;1;0"/></circle></g></svg>' // иконка прелоадера расчета доставок
// БЛОК ЦЕН
getTotalAmount: '[data-gettotalamount]' // сеелктора блока откуда берем стоимости товаров без скидки
getDiscountAmount: '[data-getdiscountamount]' // сеелктора блока блок откуда берем скидки
setTotalAmount: '[data-settotalamount]' // сеелктора блока куда вставлять сумму товаров без скидки
setDiscountAmount: '[data-setdiscountamount]' // сеелктора блока блок куда вставлять сумму скидки
setDeliveryAmount: '[data-setdeliveryamount]' // сеелктора блока куда вставлять сумму доставки
setDeliveryCashAmount: '[data-setdeliverycashamount]' // сеелктора блока куда вставлять сумму наложки
setTotalSum: '[data-settotalsum]' // сеелктора блока куда вставлять итоговую сумму заказа с учетом скидки и доставки

Last updated