В серии статей о VirtueMart рассмотрена уже большая часть функционала этого интернет-магазина для Joomla. Но чтобы сделать его полностью работоспособным все еще не хватает настройки способов доставки и оплаты купленных товаров. Сегодня я расскажу о доставке.
Содержание
Все способы доставки в VirtueMart содержаться в отдельных модулях. Посмотреть их список можно перейдя в «Магазин» –> «Список модулей доставки». Список модулей доставки показан ниже:
Как видно, большинство вариантов доставки рассчитано на западные магазины, но есть два модуля, подходящие для России и при этом покрывающие необходимый функционал.
Это модули «Standard Shipping Module» (Стандартный Модуль Доставки) и «Flex» (гибкая доставка). Ниже рассмотрим подробно каждый из них…
Стандартный модуль доставки
Стандартный модуль доставки будет подходящим в большинстве случаев. Его главное достоинство заключается в том, что он универсален. Это достигается возможностью создавать неограниченное количество вариантов и тарифов доставки. Единственный недостаток модуля – варианты и тарифы добавляются вручную, что достаточно трудоемко при их большом количестве.
Рассмотрим подробнее, что такое варианты и тарифы доставки. Хотя названия и говорят сами за себя, нужно внести некоторые пояснения. Вариант доставки – это, непосредственно, способ, которым будет доставлен товар. Например, «Курьер» или «Почта России». Тариф доставки – это стоимость доставки данным вариантом доставки, изменяющаяся в зависимости от различных условий, например региона доставки, веса доставки, габаритов доставки и.т.д. Каждый вариант доставки может содержать в себе множество тарифов доставки. Чтобы было понятнее, приведу пример:
Вариант доставки –> Тариф доставки –> Стоимость доставки
---------------------------------------------------------------------------------
- Почта России –> Московская область, до 5 кг –> 50руб
- Почта России –> Московская область, 5-10 кг –> 100руб
- Почта России –> Московская область, 10-50 кг –> 300руб
- Почта России –> Дальний восток, до 5 кг –> 200руб
- Почта России –> Дальний восток, 5-10 кг –> 400руб
- Почта России –> Дальний восток, 10-50 кг –> 1000руб
- Курьер –> Москва, размер не более 20х40х60 –> 100руб
- Курьер –> Москва, размер не более 60х80х100 –> 300руб
- Курьер –> Московская область, размер не более 20х40х60 –> 200руб
- Курьер –> Московская область, размер не более 60х80х100 –> 500руб
---------------------------------------------------------------------------------
Теперь мы можем удалить ненужные варианты и добавить требуемые.
Для добавления нового варианта доставки жмем значок «Новый». После этого откроется форма показанная ниже:
Далее создаем тарифы доставки. Для этого нужно снова перейти к списку тарифов доставки («Доставка» –> «Тарифы доставки») и нажать «Новый». Откроется форма добавления тарифов доставки, как показано ниже:
После того, как все поля заполнены, жмем «Сохранить». Теперь, при оформлении заказа, на шаге «Доставка» для выбора будет доступен наши варианты «Курьер» и «Почта России» с созданными тарифами:
Аналогичным образом можно создать все требуемые варианты доставки с нужными тарифными ставками.
Гибкая доставка
Единственный вариант, который не покрывает стандартный модуль доставки, это стоимость доставки, основанная на стоимости покупки. Для данного варианта применим модуль гибкой доставки. Также данный модуль подойдет в том случае, когда не хочется создавать множество вариантов доставки с разными тарифами, а требуется просто включить определенную стоимость доставки.
Для настройки модуля нужно перейти в «Магазин» –> «Список модулей доставки» и в строке с надписью «Flex» кликнуть по ссылке «Настроить вариант доставки». При этом откроется следующая форма:
Здесь всего 5 полей, доступных для заполнения:
– Charge flat shipping rate to this amount – если сумма покупки меньше заданной величины, то стоимость доставки будет равна значению, заданному в поле Minimum Shipping Charge, если же сумма покупки больше заданной величины, то стоимость доставки будет равна проценту от суммы покупки, этот процент задается в поле Percentage to charge if total sale is over base;
– Minimum Shipping Charge – стоимость доставки при стоимости покупки менее, чем на Charge flat shipping rate to this amount;
– Percentage to charge if total sale is over base – процент, который составит стоимость доставки, от стоимости покупки, если стоимость покупки больше, чем Charge flat shipping rate to this amount;
– Fixed Handling Charge – если вы хотите использовать дополнительную фиксированную сумму для доставки, введите ее здесь. Она будет добавлена к стоимости доставки в любом случае;
– Класс налогов – дополнительная плата за обработку.
После установки и сохранения всех настроек при оформлении заказа данный вариант будет выглядеть так:
Надпись на английском языке нас не устраивает. Чтобы поменять его на великий и могучий открываем файл administrator\components\com_virtuemart\classes\shipping\flex.php.
Находим строки 71 и 83:
$html .= "<label for=\"flex_shipping_rate\">Standard Shipping: ";
И заменяем на:
$html .= "<label for=\"flex_shipping_rate\">Стоимость доставки: ";
Если после этого на сайте вместо фразы отображаются кракозябры, то преобразуем файл flex.php в нужную кодировку. После этого страница выбора доставки будет выглядеть так:
Также стоит отметить, что лучше использовать только один из вышеописанных модулей доставки чтобы не водить покупателей в заблуждение. Для того, чтобы включить или отключить один из модулей идем в: «Настройки» –> «Настройки» –> Вкладка «Доставка» и снимаем/ставим галочки у соответствующих модулей.
На этом настройка закончена. После оформления заказа администратор интернет-магазина сможет увидеть какой способ доставки выбрал покупатель, а стоимость доставки будет включена в стоимость заказа .
Но в любом случае, информация по способам доставки очень кстати, так как я использовал только стандартный способ.
В прошлой статье я спаршивал также про способы оплаты, и здесь я уже тоже кой в чем разобрался, правдо всё равно пришлось писать свой модуль оплаты по квитанции.
Т.е. a+b*(кол-во км от МКАД)
Я установил в настройках стандартный модуль доставки. Добавил вариант доставки (Почта России) и установил несколько тарифов доставки для данного варианта.
При оформлении заказа на ступени выбора варианта доставки отображается следующее:
Пожалуйста, выберите вариант доставки!
И больше ничего, т.е. самих вариантов не отображается.
Не могу разобраться где в настройках допущена ошибка.
Большое спасибо. Все получилось, как говорится - все гениальное просто.
Что посоветуете в таком случае: есть 2 варианта доставки, стоимость на момент оформления неизвестна, и рассчитывается потом отдельно через транспортную компанию.
И эту стоимость потом нужно внести в заказ. Если ставлю фиксированную, ее потом нельзя поменять через админку в заказе, если ставлю flex - поменять можно, но нельзя 2 способа задать. Вот весь в раздумьях.
Очень удобно отслеживать состояние заказов через админку магазина, но видимо придется изначально забивать нулевую стоимость, а дальше работать с заказчиком чисто через электронку
Спасибо!
1) попробуйте называть варианты по-разному, например Доставка(вес 1-2кг), Доставка(вес 3-4кг) и.т.д. Т.е. чтобы не было вариантов с одинаковым названием.
2) проверьте, не пересекаются ли интервалы веса для разных вариантов. Возможно, проблема в этом.
Если не поможет, попробуйте создать 2 совершенно разных варианта вообще без веса и проверить отображаются они или нет. Потом напишите.
1) названия у тарифов разные
2) было 1 - 1.5; 1.5 - 2 изменил на 1 - 1.499; 1.5 - 1999 и т.д.
3) создал еще один вариант доставки, отображается: первый вариант доставки с одним тарифом от 0 кг, и новый созданный вариант доставки.
(((( Уже и порядок отображения менял :( не помогает.
Очень странно, что отображает только тот тариф, который начинается от 0 кг. когда я его удалил, то вообще тарифа никакого не отображает. Такое ощущение, что я написал вес товара 1 грамм...((( хотя 1000кг на всякий случай тоже пробовал писать. опять же результата 0. ((
Блин, как же я тебе благодарен, сам промучился целый день, огромное спасибо!
Т.е. при редактировании/создании товара в поле "Единица измерения" (для веса) нужно вписать "kg.", правильно? или без точки нужно, просто "kg"?
И ещё два вопроса:
Как сделать перевод этого "kg" (т.е. чтобы людям отображался бы именно "кг")?
Что насчёт других характеристик (их "единицы измерения")? Их тоже надо как-то по особенному писать?
Все разобрался, сам дурак, Минимальное количество для бесплатной доставки: было очень маленьким.
71 и 83 строка!!!!
А каким образом вообще отключить модуль Флекс?
Застрял, т.к. русская версия, и вместо флекса был "гибкий".
Ещё раз спасибо! Всего хорошего!
А как сделать, чтобы разным товарам были разные способы доставки (доступные одним и не доступные другим, и наоборот)?
И ещё, как магазин определяет какую валюту ты имеешь ввиду при настройке доставке? Если берётся некая валюта магазина, установленная по умолчанию - то напомни плз где она настраивается.
Хмм... пожалуй, даже никак, если не говорить о ковырянии движка. Разве что подписать в скобочках для каких товаров данный вариант доставки. Иначе использовать несколько сборок Joomla+VirtueMart на одном сайте.
"Настройки"->"Информация о магазине"
У меня странная ситуация - в модуле Standard Shipping нет возможности добавить Вариант доставки. Т.е. захожу в Virtuemart/Магазин/Список модулей доставки/Standard Shipping. И там пустота, нет ни одного варианта доставки, ни тарифа.
http://i052.radikal.ru/1008/6a/e6de8e24b9a6.jpg
При нажатии на кнопку "Новый" открывается страница "Добавить/изменить тариф доставки", но так как нет ни одного варианта доставки, добавить тариф не получается.
Я не там ищу или у меня какой-то урезанный модуль?
Спасибо.
Ровно через 5 минут поняла, где туплю - смотреть нужно не в самом модуле, а в пункте "Доставка" раздела "Администрирование" всего магазина!
Автору спасибо огромное за блок статей по Virtuemart!!!
И ещё два вопроса:
Как сделать перевод этого "kg" (т.е. чтобы людям отображался бы именно "кг")?
Что насчёт других характеристик (их "единицы измерения")? Их тоже надо как-то по особенному писать?
Теперь в свой интернет-магазин на VirtueMart легко добавить расчет доставки компаниями EMS, СПСР, ПЭК, DHL, Экспресс-курьер, Грузовозофф, ЖелДорЭкспедиция, Автотрэйдинг, UPS, Почта России.
Возможности модуля: 1020 городов России и 230 стран мира, 20 видов отправлений, расчет с учетом страховки груза, с наложенным платежом. Тарифы всегда актуальны.
Подробная информация: http://www.edost.ru/shop.php
При выборе модуля доставки flex цена доставки не добавляется к стоимости заказанных товаров. А просто добавляется надпись +500 - смотрите скриншот: http://s45.radikal.ru/i110/1010/e9/935b0581624f.jpg
Как сделать чтобы стоимость доставки (500 руб.) прописывалась там где нужно и добавлялась к стоимости заказа?
Вопрос снимается - разобрался сам.
Как решил проблему подскажи пожалуйста...Спасибо.
Когда добавляю вариант доставки , пишу например по русски "Курьер", то в списке вариантов доставки вместо Курьер просто пустое поле, а если писать по английски, то пишет просто первая буква слова. В чем проблема, кто нибудь знает? Кто может помочь? Заранее спасибо!
"Способ оплаты: 'то, что вы укажете в названии способа оплаты'"
Теперь касательно доставки. Чтобы не было этой ошибки у вас в настройках должен быть активирован один способ доставки.
components\com_virtuemart\themes\default\templates\checkout
и попробуйте "скрестить" файл, который отвечают за выбор способа доставки с файлом корзины. Может что и получится, хотя я очень в этом сомневаюсь.
но у меня новая проблема, не знаю в какую главу ее отнести... после обнуления счетчика заказов, например в новом 1 заказе остается товар из заказа который был удален, но итоговая сумма заказа не учитывает этот старый товар. что делать? обнуление делалось очищением этих таблиц
jos_vm_orders
jos_vm_order_history
jos_vm_cart
jos_vm_order_payment
jos_vm_order_user_info
Вы не могли бы мне подсказать, никто не может(
у меня в списке доставок только та, что я настроил, но она не выводилась для выбора, было только эта - Standard Shipping: встроенная какая то.
так вот, теперь когда отображается моя доставка (обычная доставка), как мне эту убрать - Standard Shipping: она мне не нужна, не красиво маячит.
повторюсь в списке доставок (в админке) и в списке тарифов только моя (обычная доставка) доставка...
Убрал галочку... немного поигрался, опять пересохранил мои тарифы и заработало!!!!!!!!1
СПАСИБО!!!!!!!
Есть два варианта доставки: Курьер-300 р. И Самовывоз - 0 р. При покупке на сумму больше 10000р. (указано в настройке магазина), доставка курьером бесплатна.
По факту так и получается, если покупатель набирает товар на сумму >10000 то опции "Курьер" и "Самовывоз" пропадают и появляется "На этот заказ доставка бесплатна!". Но хотелось бы, оставить покупателю возможность выбрать "Самовывоз".. Не подскажете как? Спасибо! (пользую модуль Standard Shipping Module)
Не нашел соответствующей темы, поэтому пишу в этот пост. Меня интересует такой вопрос: существует ли какой-либо модуль под virt, позволяющий пользователю к заказу подгружать изображения? Скажем в такой форме: печать рисунков на футболках - пользователь выбирает футболку, подгружает изображение, которое хотел бы на нее поместить и оформляет заказ.
Заранее спасибо!)
http://wedal.ru/forum/Poisk-podhodjashchego-rasshirenija/123-Kak-prikrepit-foto-k-zakazu-v-Virtuemart.html
Подскажите, пожалуйста, как сделать, чтобы в варианте доставке Flex можно вместо процентов вписать фиксированную сумму. Например, если сумма заказа
Такой вопрос. Есть два варианта доставки: самовывоз и курьером по адресу ( используется Стандартный модуль доставки с индивидуальными данными о расценках. РЕКОМЕНДУЕТСЯ !). Возможно ли настроить так, чтобы при оформлении заказа, для каждого варианта отрабатывался свой "сценарий"? Хотелось бы так. Если клиент выбирает "самовывоз", то шаг "введите адрес" пропускается вообще, либо туда автоматом вставляется контактная информация из общих настроек магазина (в идеале). Соответственно, если выбирается вариант "доставка курьером", клиент вводит свой адрес для доставки.
У меня такая проблема - при добавлении нового варианта доставки совсем не показывается название по-русски, т.е. полностью пустое поле. А по-английски показывает только первую букву как в примере (там было написано courier, а показывает только "с") http://apikabu.ru/72704e
Подскажите как можно отредактировать вывод вариантов доставки при оформлении заказа. Используются Почта России, стандартный модуль и гибкий. На странице оформления вместе выглядят не очень. Из какого файла выводятся заголовки для стандартного модуля доставки: Тариф доставки, Вариант и Цена? Можно ли менять местами модули (их отображение) при выводе на странице оформления?
Вот такая вот проблема, как сделать, чтоб для одной страны сумма бесплатной доставки была одна, а для других стран другая?
Пожалуйста подскажите, ну очень надо.
Я СОЗДАЮ ВАРИАНТ ДОСТАВКИ ПИШУ ЕГО ИМЯ, А ПОСЛЕ СОХРАНЕНИЯ У МЕНЯ ВЫСВЕЧИВАЕТСЯ ТОЛЬКО ПЕРВАЯ БУКВА, А ЕСЛИ НАЗВАНИЕ ВВОДИТЬ НА РУСCКОМ ЯЗЫКЕ - ТО ВООБЩЕ НИЧЕГО НЕ ОТОБРАЖАЕТСЯ.
Самая простая проблема меня выжала уже.
В общем создал я вариант доставки "курьер", тариф согласно уроку.
Но в поле "Пожалуйста, выберите вариант доставки!" ничего нет. Выбран только Стандартный модуль доставки.
В тарифе индексы от 000000 до 999999
вес от 0 до 100
уже замучился, раз десять перечитал урок и комменты.
При попытке преименовать на русский в этих строчках:
$shipping_rate_id = urlencode(__CLASS__."|STD|Standard Shipping under ".$base_ship."|".$flat_charge);
и
$shipping_rate_id = urlencode(__CLASS__."|STD|Standard Shipping over ".$base_ship."|".$shipping_temp1);
Выдает пустое поле, если вставляю текст в виде кода UTF-8 резултат на сайте в виде этого же кода, что делаю не так?
Здравствуйте! у меня та же беда. Включены оба модуля доставки. Flex и стандартный модуль (самовывоз). Только почему то гибкий вариант работает, а выбирая самовывоз выскакивает ошибка. в чем проблема, не могу никак понять!
Как наилучшим способом реализовать возможность доставки (Standart module) по states and province ... поскольку доставка в разные города разная... и своими силами а не почтовыми курьерами. В поле выбора shipping rates только страны....
заранее спасибо)
вот пример реализации НО ооочень дорого..(
Попал в идиотское положение, хоть магазин заново настраивай :(
При настройке vm я отключил все модули доставки. Затем подключив Standart Shipping и настроив варианты доставки у меня так и не появился "Выбор варианты доставки".
Shipping Method: Standard Shipping modulу
Shipping Module List: Standard Shipping Module включен
В тарифе индексы от 000000 до 999999
вес от 0
В чем может быть дело?
Добавляю товар в корзину и если выхожу из корзины например на главную страницу, а потом возвращаюсь к корзине, то выдает на любое действие "The requested URL /virtuemart was not found on this server." Вот попробуйте что-нибудь заказать таким образом http://zp-store.ru/ . Из-за чего эта ошибка?
Спасибо!
Нашел ответ! Все дело в настройках joomla, если в Общие настройки-Сайт-Установки Search Engine Optimization изменить параметры (выкл SEO, вкл mod_rewrite и выкл суффикс к URL) то корзина полностью функциональна (я глюченности не заметил). Вот только, чем это можно объяснить из-за чего она не работала?
Добрый день. Вчера, наконец, в 7 утра победил. Возможно, кому-то будет полезно - оказывается, не работает, только если в поля регистрации вводить английские буквы. А если все поля заполнять только русскими буквами, то все работает прекрасно. Странно, но факт. А я проверял возможность покупок, используя оба алфавита при регистрации пользователей - как при регистрации админки.
при выключенном гибком и включённом стандартном - ничего не отображается. делал всё как написано...подскажите пожалуйста.
Да, действительно, проблема была в странах и индексе, сори что отвлёк по мелочи :)
Ещё хотелось Вам сказать огромное спасибо, за такой объёмный, и безусловно нужный труд! Лично меня этот цикл статей иногда просто спасает. Удачи Вам!
Подскажите, пожалуйста, как настроить самовывоз в том случае, если у меня не 1 точка самовывоза, а 20. Т.е. можно ли как-то сделать выпадающий список с адресами, чтобы клиент мог выбрать убодную для себя точку самовывоза???
- самовывоз(точка 1);
- самовывоз(точка 2);
..................
- самовывоз(точка 20);
Понимаю, что это не слишком изящно, зато не требует хаков.
Я пользуюсь Joomla 2.5.6 Virtuemart 2.08
Не подскажите откуда можно скачать модули доставки DHL, FedEx,UPS.(чтобы потом зарегистироваться и активировать расчеты доставки)
Дело в том, что я живу в Грузии и поэтому сервис eDost мне не доступен ( он работает на отправку только из городов России, а мне надо, чтобы из городов Грузии )
а есть ли вариант модуля, чтобы было так.
варианты доставки:
- курьер
- самовывоз
- автобусом
- транспортной компанией.....
а теперь если чел выбирает транспортную коспанию - ему еще выпадает список.. вариантов компаний.
есть такое уже ? или в виртуемарие так не получится сделать ??