Добавлен украинский язык для VamShop 2.
Скачать украинский язык для VamShop 2.
Рубрика: Заметки
Выпущена новая версия VamShop 2.37.
Что изменилось:
1. Редактор TinyMCE обновлён до текущей версии 4.2.4.
2. Библиотека подсветки кода CodeMirror обновлена до текущей версии 5.6.0.
3. Добавлен менеджер картинок в редакторе TinyMCE.
4. Добавлена кнопка печати счёта в админке, при просмотре заказа.
5. Добавлена кнопка печати накладной в админке, при просмотре заказа.
6. Добавлено чередование css классов в вывод атрибутов/спецификаций.
7. Добавлена возможность открытия вкладки с помощью параметра.
8. Добавлено dropdown меню с выбором категории в Админке — Содержание.
9. Добавлена распечатка накладной в модуль оплаты Invoice.
10. Корректировка метода setDefaultItem.
11. Корректировка sms уведомлений в админке.
Выпущена новая версия VamShop 2.36.
Что изменилось:
1. Добавлены SMS уведомления клиентов при оформлении заказа, при изменении статуса заказа.
2. Корректировка модуля оплаты Яндекс.Касса.
3. Исправлены ошибки в css стилях слайдера.
4. Добавлен новый js код для выравнивания высоты колонок (equal height).
5. Исправлена ошибка с кэшированием цен при переключении магазина на другую валюту.
6. Добавлен вывод уведомления после добавления отзыва к товару.
7. Добавлено gzip сжатие для woff2 шрифта FontAwesome.
Полный список изменений доступен на форуме поддержки http://forum.vamshop.ru
Настройка SMS уведомлений в VamShop 2
В VamShop 2 встроена отправка SMS уведомлений покупателям, оформившим заказ в магазине.
Пример получаемых покупателем SMS (Шаблон отправляемого письма правится в Админке — Настройки — Шаблоны писем — new-order):
В данной заметке расскажем как настроить SMS уведомления в VamShop 2.
1. Для отправки SMS в VamShop 2 может использоваться любой Email -> SMS шлюз.
Отправка SMS покупателям была проверена на сервисах MainSMS.Ru и AvisoSMS.Ru.
Настройка SMS уведомлений состоит из двух частей:
1. Регистрация в MainSMS.Ru и получение email адреса для sms уведомлений.
2. Указание этого email адреса в Админке — Настройки — Магазин — SMS Email шлюз.
Всё легко и просто.
Нам нужно получить email адрес для отправки sms, т.е. зарегистрировать шлюз email -> sms.
1. Регистрируемся в сервисе MainSMS.Ru.
2. Подтверждаем свою регистрацию. После чего нам нужно зайти в личный кабинет, ссылка Вход в личный кабинет.
3. Переходим в личный кабинет.
4. В личном кабинете переходим по ссылке API.
5. Нажимаем кнопку Добавить проект.
6. Заполняем поле Название проекта и нажимаем Создать API проект.
7. Мы создали проект, переходим внутрь нашего проекта, нажав на названии проекта.
8. Из поля E-Mail to SMS копируем указанный email ящик.
Всё.
Осталось указать этот ящик в настройках магазина и SMS будут отправляться покупателям после оформления заказа в магазине.
Указываем наш полученный в сервисе mainsms.ru email в Админке — Настройки — Магазин — SMS Email шлюз.
Теперь Ваши покупатели будут получать SMS уведомления при оформлении заказа в магазине.
Шаблон письма, которое отправляется покупателям в виде SMS и email письма правится в Админке — Настройки — Шаблоны писем — new-order.
Отчёты об отправленных SMS можно смотреть в своём личном кабинете на сайте MainSMS.Ru в разделе Личный кабинет — История сообщений.
Выпущена новая версия VamShop 2.35.
Что изменилось:
1. Новый шаблон админки.
2. Новое меню навигации в админке.
3. Добавлена кнопка scrollup в админку.
4. Исправлена ошибка с выводом картинки, с порядком сортировки картинки.
5. Добавлена настройка Маска телефона в Админке — Настройки — Магазин.
6. Добавлены подсказки https://dadata.ru/suggestions/ в модуль оформления заказа.
7. Корректировка кода запроса контента.
8. Корректировка скрипта открытия картинок colorbox.
9. Шрифт иконок FontAwesome обновлён до текущей версии.
10. Добавлена опция DaData.Ru API ключ подсказок в Админке — Настройки — Магазин.
Полный список изменений доступен на форуме поддержки http://forum.vamshop.ru
Для удобства покупателей (особенно для пользователей смартфонов и планшетов) в модуль оформления заказа добавлены подсказки DaData.Ru — https://dadata.ru/suggestions/
Проверить работу подсказок можно в онлайн демо-версии http://demo2.vamshop.ru
Добавьте товар в корзину и перейдите к оформлению заказа.
Подсказки добавлены для полей Имя, Адрес, Email.
После заполнения поля Адрес, автоматически на основе подсказок заполняются поля Город, Почтовый индекс, Регион. Попробуйте демо-версию, это действительно очень удобно и быстро.
Скриншоты
Подсказки для имени и фамилии:
Подсказка для поля Адрес и автоматическое заполнение полей Город, Почтовый индекс, Регион:
Модуль подсказок встроен в VamShop 2.36 и выше.
Регистрируетесь в сервисе https://dadata.ru/suggestions/, получаете свой API ключ и указываете его в Админке — Настройки — Магазин — DaData.Ru API ключ подсказок.
Добавлен новый бесплатный адаптивный шаблон для VamShop 2 — E-Shopper.
Скачать шаблон E-Shopper для VamShop 2.
По умолчанию в VamShop 2 оформление заказа выглядит на смартфоне/десктопе вот так:
В данной заметке расскажу как сделать на смартфоне/десктопе вот так:
Максимально упростим оформление заказа в магазине, даже со смартфонов/планшетов можно быстро и удобно оформить заказ.
Что мы будем делать:
1. Уберём обязательное поле email, обязательными будут только Имя и Телефон.
2. Уберём все остальные лишние поля.
3, Из модулей доставки оставим только курьерскую доставку.
4. Из модулей оплаты оставим только оплату наличными курьеру.
Приступим:
1. Нам нужно задать свой шаблон для страницы оформления заказа, т.е. не использовать стандартный шаблон, а добавить свой и использовать его.
Для этого в Админке — Расширения — Тэги выбираем тэг checkout.
Внизу страницы нажимаете кнопку — Создать микро шаблон из тэга.
На следующей странице создания микро шаблона в опции Псевдоним указываем название нашего нового шаблона, например my-checkout и нажимаем Продолжить.
Шаблон создан для страницы оформления заказа.
2. Теперь нам нужно указать, что б страница оформления заказа отрисовывалась нашим шаблоном my-checkout, а не шаблоном по умолчанию.
Для этого в Админке — Содержание — Страницы редактируем страницу Оформление и меняем {checkout} на {checkout template=’my-checkout’}
т.е. мы указали, что страница оформления заказа должна отрисовываться нашим шаблоном my-checkout.
Нажимаем кнопку Продолжить.
Всё, мы указали, что страница офомления заказа теперь отрисовывается нашим шаблоном my-checkout.
Осталось лишь отредактировать наш микро шаблон my-checkout и убрать всё лишнее.
3. Заходим в Админку — Оформление — Микро шаблоны и нажимаем на нашем шаблоне my-checkout, откроется страница редактирования шаблона.
Удаляем всё лишнее, в поле Шаблон должен остаться только вот этот код:
<script type="text/javascript"> $(function () { $("#contentform :input:text:visible:enabled:first").focus(); $("form#contentform :input").change(function() { $("input[id='" + this.id + "']").addClass("modified"); $("radio[id='" + this.id + "']").addClass("modified"); $("select[id='" + this.id + "']").addClass("modified"); $("checkbox[id='" + this.id + "']").addClass("modified"); $("textarea[id='" + this.id + "']").addClass("modified"); }); $("label.shipping-method").click(function(){ $("label.shipping-method").parent().removeClass("selected"); $(this).parent().addClass("selected"); }); $("label.payment-method").click(function(){ $("label.payment-method").parent().removeClass("selected"); $(this).parent().addClass("selected"); }); // validate form $("#contentform").validate({ rules: { bill_name: { required: true, minlength: 2 }, phone: { required: true, minlength: 10, }, }, messages: { bill_name: { required: "{lang}Required field{/lang}", minlength: "{lang}Required field{/lang}. {lang}Min length{/lang}: 2" }, phone: { required: "{lang}Required field{/lang}", minlength: "{lang}Required field{/lang}. {lang}Min length{/lang}: 10" } } }); }); </script> <div id="checkout"> <form action="{$checkout_form_action}" method="post" id="contentform" class="form-horizontal"> <div id="bill_information"> <div> <h3>{lang}Billing Information{/lang}</h3> </div> <div class="form-group"> <label class="col-sm-3 control-label" for="bill_name">{lang}Name{/lang}:</label> <div class="col-sm-9"> <input type="text" class="form-control" name="bill_name" id="bill_name" value="{if $customer.AddressBook.ship_name}{$customer.AddressBook.ship_name}{else}{$order.bill_name}{/if}"/> </div> </div> <div class="form-group"> <label class="col-sm-3 control-label" for="phone">{lang}Phone{/lang}:</label> <div class="col-sm-9"> <input type="text" class="form-control" name="phone" id="phone" value="{if $customer.AddressBook.phone}{$customer.AddressBook.phone}{else}{$order.phone}{/if}" /> </div> </div> </div> <div id="shipping_method"> <div> <h3>{lang}Shipping Method{/lang}</h3> </div> <div class="clearfix"> <ul class="shipping-methods"> {foreach from=$ship_methods item=ship_method} <li class="item col-sm-6 col-md-4{if $ship_method.id == $order.shipping_method_id} selected{/if}"> <label class="shipping-method"> <span class="title"> <input type="radio" name="shipping_method_id" value="{$ship_method.id}" id="ship_{$ship_method.id}" {if $ship_method.id == $order.shipping_method_id} checked="checked" {/if} /> <span class="name">{lang}{$ship_method.name}{/lang}</span> </span> <span class="image text-center"> {if $ship_method.icon}<img src="{base_path}/img/icons/shipping/{$ship_method.icon}" alt="{$ship_method.name}" title="{$ship_method.name}" /> {/if} </span> {if $ship_method.cost_plain > 0}<span class="description">{$ship_method.cost}</span>{/if} {if $ship_method.description}<span class="description">{$ship_method.description}</span>{/if} </label> </li> {/foreach} </ul> </div> </div> <div id="payment_method"> <div> <h3>{lang}Payment Method{/lang}</h3> </div> <div class="clearfix"> <ul class="payment-methods"> {foreach from=$payment_methods item=payment_method} <li class="item col-sm-6 col-md-4{if $payment_method.id == $order.payment_method_id} selected{/if}"> <label class="payment-method"> <span class="title"> <input type="radio" name="payment_method_id" value="{$payment_method.id}" id="payment_{$payment_method.id}" {if $payment_method.id == $order.payment_method_id} checked="checked" {/if} /> <span class="name">{lang}{$payment_method.name}{/lang}</span> </span> <span class="image text-center"> {if $payment_method.icon}<img class="text-center" src="{base_path}/img/icons/payment/{$payment_method.icon}" alt="{$payment_method.name}" title="{$payment_method.name}" /> {/if} </span> {if $payment_method.description}<span class="description">{$payment_method.description}</span>{/if} </label> </li> {/foreach} </ul> </div> </div> <div class="form-group"> <div class="col-sm-offset-3 col-sm-9"> <button class="btn btn-warning" type="submit" value="{lang}Continue{/lang}"><i class="fa fa-check"></i> {lang}Continue{/lang}</button> </div> </div> </form> </div>
Сохраняем наш микро шаблон my-checkout.
Теперь наше оформление заказа в магазине максимально простое.
Нужно лишь заполнить поля Имя и Телефон, больше никаких лишних данных, кучи форм, полей, кликов.
Обратите внимание, что нам не пришлось копаться в php коде, подключаться по ftp, скачивать файлы и прочее-прочее, всё делается прямо в админке, никаких лишних программ, нет лишней траты времени, всё удобно и легко.
Спасибо за внимание.
В VamShop 2 добавлена возможность изменять цветовую схему стандартного шаблона по Вашему вкусу, прямо в браузере, без правки файлов.
Сделанный выбор сохраняется, при следующем посещении магазина цветовая схема будет именно та, которую Вы выбирали.
Демо-версия VamShop 2: http://demo2.vamshop.ru
Смена цветового оформления в правом верхнем углу.
Скриншоты:
Добавлен новый модуль — Ярлыки товара.
Модуль позволяет добавлять товарам любые ярлыки: как текстовые, так и графические, в виде картинок, к примеру: Новинка, Распродажа, Хит.
Ярлыки товаров выводятся как в списке товара:
так и на странице карточки товара:
Кроме текстовых ярлыков можно добавлять ярлыки графические, в виде абсолютно любой картинки, в данном примере ярлык -50% добавлен в виде картинки:
Соответственно, оформление ярлыков может быть абсолютно любым.
Настраиваются ярлыки в Админке — Настройки — Ярлыки товара.
Сначала создаётся список ярлыков:
Затем при создании/редактировании товара в закладке Данные, в опции Ярлык товара выбранный ярлык цепляется к конкретному товару: