Плагин позволяет задать разные цены для разных витрин, а также для групп покупателей.
Плагин адаптирован к работе с версией Shop-Script X, поддерживается интерфейс UI 2.0
Плагин совместим с версией PHP 7.4. Рекомендуем использовать его на системах с PHP 8.0 - 8.3 для более быстрой и стабильной работы.
Разные цены на витринах
Даёт возможность задавать правила показа цен для разных витрин.
Автоматическое заполнение
С помощью пары кликов рассчитайте все цены по формуле или заполните из значений характеристики, а также из CSV-файла.
Разные покупатели
Можно назначать цены для разных групп покупателей.
Действия по расписанию
Заполнение цен можно поставить в планировщик cron.
Для начала вы создаете в админке желаемые типы цен. Например, "Оптовая цена", "Розничная цена", "Цена для маркетплейсов". После этого заполняете цены у товаров и назначьте правила выбора цен для витрин и групп покупателей.
Редактировать цены можно вручную: в редакторе товара (в разделе артикулов) появляется поле ввода для каждого типа цен, кроме базовой.
Можно заполнять цены из значений какой-либо характеристики. Также можно запустить расчет цен по формуле, исходя из базовой цены. Например: Базовая цена * 1.2 + 100.
Также работает импорт цен из CSV. Нужно загрузить CSV-файл, указать столбцы для идентификации товаров и указать какие столбцы в какие цены импортировать.
Также можно вывести на витрину переключатель выбора текущего типа цены.
Есть хелперы для вывода цены нужного типа в любом произвольном месте, получения суммы корзины с учетом выбранного типа цен, получение списка типов цен и др. Полный список хелперов есть на странице "Инструкции".
Возникли вопросы? Обратитесь в нашу техподдержку или отправьте сообщение по адресу support@welldi.ru
Хотите быть в курсе новостей от Webasyst и Shop-Script, обсудить новый функционал, обменяться опытом с коллегами? Задать вопрос Независимым Разработчикам или найти Исполнителя на проект? Вступайте и пиши в крупнейшее независимое сообщество "Webasyst для всех": Телеграм чат (https://t.me/webasyst_for_all)
В версии PREMIUM добавлена возможность игнорировать изменение цен на витрине при определенных USER_AGENT (выводить основную цену). Это может быть полезно, например, при выводе цены для ботов поисковых систем.
В приведенном примере на витрине mysite.ru/opt/* будет показываться обычная цена, если USER_AGENT содержит одно из указанных значений.
Основные моменты
- Для начала создайте нужные типы на вкладке "Типы цен". Например: Цена опт, Цена для юр.лиц, Цена для маркетплейсов.
- Редактирование цен для артикулов производится там же, где редактирование обычной цены. Для каждого типа цен добавляется отдельное поле.
- Для массового заполнения цен вы можете воспользоваться рассчетом по формуле, импортом значений из характеристик или агрузкой цен в csv-файле (всё это производится на вкладке "Цены").
- Если вы хотите, чтобы цены на витрине заменялись на новые, вам нужно указать витрины на вкладке "Настройки". Сначала создайте группу витрин. Добавьте в неё нужные витрины. Для каждой витрины создайте правила для групп покупателей.
- Если вы позволяете покупателям самим выбирать себе тип цен, воспользуйтесь хелперами {shopPricetypePlugin::showRadio()} или {shopPricetypePlugin::showSelect()} (их описание см.ниже) и не забудьте включить соответствующий флажок в настройке витрины.
Запуск заполнения цен из характеристики
- На вкладке "Цены" вы можете заполнить цены у товаров, взяв значения из соответствующей характеристики.
- Характеристика должна быть числового или символьного типа (double или varchar), без множественного выбора.
- Значения характеристики должны быть присвоены артикулам.
Запуск заполнения цен из CSV-файла
- На вкладке "Цены" вы можете заполнить цены у товаров, взяв значения из CSV-таблицы.
- После загрузки CSV-файла вам откроется несколько строк его содержимого. Над каждым столбцом вы увидите поле выбора. Здесь вам нужно указать столбцы для идентификации товаров (код артикула и/или ID товара), а также столбцы для импорта (над ними мы указываем соответствующие типы цен). Столбцы, которые не участвуют в импорте, оставьте с пометкой "Не импортировать".
- Есть возможность перед импортом очистить все цены выбранных типов.
- Перед началом импорта плагин запросит у вас подтверждение, где вы сможете проверить, все ли настройки указаны верно, и запустить импорт.
Выполнение по расписанию
- Для начала создайте профиль
- Команда для запуска из консоли:
php {$root_path}/cli.php shop pricetypePluginRun <ID профиля>
- Лог выполнения скрипта находится в файле /wa-log/shop/plugins/pricetype/cli.log
php {$root_path}/cli.php shop pricetypePluginRun 2
Создание правил для витрин
- Правила для витрин задаются на вкладке "Настройки".
- Если у вас несколько витрин, на которых вы хотите показывать разные цены, создайте группы витрин. Во избежание путаницы одна витрина не может принадлежать к разным группам.
- Настройка "Работа с валютами". Вариант "Переводить цены из валюты товара" - актуален для магазинов, у которых цены разных товаров заданы в разных валютах, и нужно переводить на витрине в одну валюту. "Переводить из валюты типа цен" - если у вас разные типы цен заданы в разных валютах, и нужно переводить их в валюту витрины. "Не переводить цены" - цена берется как есть, не конвертируется (как было в старых версиях, до версии 2024.06.10).
- Настройка "Старый выбор типа цен" - если вы предоставляете покупателю право выбрать свой тип цены (выводите переключатель с помощью хелпера), то включите этот флажок. Без него переключатели работать не будут. При включенном флажке введенные правила не действуют! Они перекрываются выбором пользователя.
- Настройка "Название обычной цены" - также нужна, если вы используете переключатель выбора типов цен на витрине. Укажите, как будет называться обычная цена из магазина.
- Для каждой группы можно задать правила выбора цен для разных групп покупателей. Если для группы не заданы правила, то будут выполнены правила из настройки "Все витрины". Если для покупателя актуально несколько правил, будет выполнено то, которое расположено ниже в списке правил.
Хелперы:
Примеры использования:
{shopPricetypePlugin::getPrice($product.sku_id, 3)}
{shopPricetypePlugin::getPrice($p.sku_id, 2, 'product', 'RUB')}
Примеры использования:
{shopPricetypePlugin::getCurrencyPrice($product.sku_id, 3)}
{shopPricetypePlugin::getCurrencyPrice($p.sku_id, 2, 'product', 'RUB')} - переведет из валюты товара в рубли
Примеры использования:
{shopPricetypePlugin::getPrices([467, 789, 267], 3)}
{shopPricetypePlugin::getPrices($products, 2, 'product', 'RUB')}
Примеры использования:
{shopPricetypePlugin::getCurrencyPrices([467, 789, 267], 3)}
{shopPricetypePlugin::getCurrencyPrices($products, 2, 'product', 'RUB')}