Настройки Minishop2

Настройки Minishop2 MODX Revo

В рамках данного урока разберем как настроить Minishop2 под различные типы сайтов: интернет-магазины или партнерский интернет каталог с офферами (т.е. у нес не будет кнопок купить, корзин и т.д. следовательно множество стандартных полей нам не нужно) и мы их отключим.

Системные настройки Minishop2

Настройки для карточки товара

ms2_product_extra_fields (дополнительные поля товара) — эта настройка отвечает за вывод полей во вкладке «Свойства товара», по умолчанию они следующие: price(цена), old_price (старая цена), article (артикул), weight (вес), color (цвета), size (размеры), vendor (производитель), made_in (страна), tags (теги), new (новый), popular (популярный), favorite (особый)
Свойства товара

Все что не нужно можно отключить, например в нашем случае можно смело удалить: ,vendor и ,made_in, получим данную вкладку без этих полей.

Свойства товара без производителя и страны

Да еще все эти поля можно переименовать (если сильно хочется).

Если данные свойства вам не нужны, то можно полностью скрыть эту вкладку при помощи настройки: ms2_product_tab_extra (вкладка свойств товара) — ставим Нет (для скрытия).

Таким же образом можно скрыть остальные вкладки (если они вам не нужны):

  • ms2_product_tab_categories (вкладка категорий товара) — ставим Нет (для скрытия). Скрываем если только у вас товары или офферы находятся строго только в 1 категории.
  • ms2_product_tab_gallery (вкладка галереи товара) — ставим Нет (для скрытия). Нюанс: если вы хотите парсить контент и заливать изображения с левых сайтов — то эта вкладка вам точно нужна. А так, если картинка одна и парсить не чего не будите, то можно использовать обычное TV изображение (которое у нас уже есть).
  • ms2_product_tab_links (вкладка связей товара) — ставим Нет (для скрытия).
  • ms2_product_tab_options (вкладка опций товара) — ставим Нет (для скрытия), но они нам точно будут нужны.
  • ms2_product_show_comments (показывать комментарии товара) — ставим нет (либо Да, если хотите привязать к карточкам товара комментарии от tickets).

ms2_product_thumbnail_default (путь к превью по умолчанию) — я обычно делаю какую-нибудь свою картинку и потом указываю до нее путь: img/noimage.png.

ms2_template_product_default (шаблон по умолчанию для новых товаров) — устанавливаем шаблон по умолчанию.

ms2_email_manager (почтовые адреса менеджеров) — для полноценного магазина указываем email адреса через запятую, куда будут приходить уведомления о заказах.

Категория товаров

ms2_category_show_comments (показывать комментарии категории) — ставим нет, если к карточкам tickets не собираетесь прикручивать.

ms2_template_category_default (шаблон по умолчанию для новых категорий) — ставим шаблон для категорий.

ms2_category_grid_fields (поля таблицы товаров) — данная настройка отвечает за табличный вид в категории товаров:

Табличный внешний вид

Следовательно, к примеру ID можно убрать (оно на против названий выводиться), я делаю каталог офферов, вкладка свойств скрыта (через системные настройки) — от сюда вытекает что в моем случае можно смело можно удалить еще Цену и Артикул. Для этого убираем из настройки: id ,article и до кучи ,new,favorite,popular.

Так же в эту сетку можно добавлять опции товаров (будем создавать в следующем уроке). Для этого вписываем туда их названия, через запятую.

Пример настройки внешнего внешнего вида сетки

После этого включаем опцию ms2_category_show_options (показывать опции товаров категории) — ставим ДА и получаем такую сетку.

Новый внешний вид сетки

Настройки из вкладки Сайт.

ms2_frontend_css (стили фронтенда) — [[+cssUrl]]web/default.css

ms2_frontend_js (скрипты фронтенда) — [[+jsUrl]]web/default.js

ms2_frontend_message_css ms2_frontend_message_css — [[+cssUrl]]web/lib/jquery.jgrowl.min.css

ms2_frontend_message_js ms2_frontend_message_js — [[+jsUrl]]web/lib/jquery.jgrowl.min.js

ms2_frontend_message_js_settings ms2_frontend_message_js_settings —  [[+jsUrl]]web/message_settings.js

В общем это все стили и скрипты которые подключаются в фронтенд сайта, т.к. сейчас я создаю так сказать каталог с оферами и мне не нужны: кнопоки купить, корзина — я удаляю все эти значения.

Если делаете полноценный магазин, из обязательного: укажите email адреса менеджеров к которым будут прилетать уведомления о покупках, ключ: ms2_email_manager.

Прочие настройки (для тех кто делает интернет-магазин).

С системными настройками разобрались, теперь разберем как сделать остальные настройки. Для этого перейдите в «Пакеты» — «miniShop2 — «Настройки». Теперь разберем каждую вкладку индивидуально.

Варианты доставки

Доставка

Вы можете создавать разные методы доставки со своей логикой, за которую будет отвечать кастомный класс, указанный в настройках. Класс необязателен, вы можете его не указывать и тогда никакой особой обработки заказа не будет.

создание метода доставки

Каждому методу доставки привязываются свои методы оплаты в окне редактирования.

окно редактирования способа доставки

Способы оплаты

Способы оплаты

Методы оплаты привязываются к заказам и должны реализовывать какую-то свою логику. Обычно они отправляют пользователя для оплаты заказа на сторонний сервис.

Добавление способа оплаты

Указание класса-обработчика оплаты необязательно.

Статусы заказа

Статусы заказа

Существует несколько обязательных статусов заказа:

  • новый
  • оплачен
  • отправлен
  • отменён» Их можно настраивать, но нельзя удалять, так как они необходимы для работы магазина. Вы можете указать свои статусы для расширенной логики работы с заказами в своём классе.

Статус может быть окончательным. Это значит, что его нельзя переключить на другой. Например, «отправлен» и «отменён».

Статус может быть зафиксирован. То есть, с него нельзя переключаться на более ранние статусы (порядок задаётся перетаскиванием). Например, «оплачен» нельзя переключить на «новый».

Редактирование статуса заказа

Каждый статус может отправлять свои письма покупателю и администраторам магазина, указанным в системной настройке ms2_email_manager.

Для оформления писем используются указанные в статусе чанки. Все они обрабатываются pdoTools, так что вы можете использовать Fenom для наследования одного общего шаблона писем.

Производители товаров

Производители товаров

В этом разделе вы можете задать производителей товаров, которые потом будут выбираться в свойствах товара.

Добавление производителя

Каждому производителю можно указать разные свойства и связь с ресурсом сайта, например, для вывода его персональной страницы.

Связи товаров

Это простой инструмент, который позволяет создавать группы товаров по любому признаку.

Связи товаров

Типы связи нужно выбрать из четырех доступных:

  • Один к одному — двухстороння равная связь товаров.
  • Один ко многим — связь одного товара с несколькими. Дочерние товары не связаны друг с другом, только с родителем.
  • Многие к одному — тоже самое, что и предыдущая связь, только наоборот — дочерний товар связывается с главным. Возможно, этот тип избыточен, но пусть будет для симметрии.
  • Многие ко многим — самый интересный тип связи — равнозначная многосторонняя связь нескольких товаров, при добавлении в группу нового товара он связывается со всеми ее членами. Эта связь нужна для указания товаров, которые отличаются, например, по одному параметру. Или все товары этой группы могут быть участниками какой-то акции (и вы легко сделаете вывод ссылок на другие предложения на странице товара).

Создание связи товара

Хранение

Для добавления новой записи нужно выбрать заранее созданную связь и товар, к которому ее применить.

Добавление связей в товаре

На уровне базы данных связанность товаров представляет таблица msProductLink, в которой всего 3 столбика:

  • link — то есть id связи в таблице msLink, которую мы создали чуть выше, в настройках
  • master — это id главного товара
  • slave — а это id подчиненного товара

Давайте разберемся, какие записи создаются у разных типов связей.

Один к одному — добавляем товар с id = 11 к товару с id = 15, создаётся 2 записи в БД:

master = 11, slave = 15
master = 15, slave = 11

Один ко многим — добавляем 3 товара с разными id к товару с id = 110, получаем такие записи:

master = 11, slave = 15
master = 11, slave = 16
master = 11, slave = 17

Многие к одному — добавляем 3 товара с разными id к товару с id = 11, получаем такие записи:

master = 21, slave = 11
master = 22, slave = 11
master = 23, slave = 11

Многие ко многим — и, наконец, добавляем 3 товара с разными id к товару с id = 11.

master = 11, slave = 31
master = 11, slave = 32
master = 11, slave = 33
master = 31, slave = 11
master = 31, slave = 32
master = 31, slave = 33
master = 32, slave = 11
master = 32, slave = 31
master = 32, slave = 33
master = 33, slave = 11
master = 33, slave = 31
master = 33, slave = 32

Все товары группы перелинкованы друг с другом.

Выборка

Тут всё просто: создаём сниппет и выбираем id товаров группы, указывая link и master (у связи многие к одному — slave вместо master).

$q = $modx->newQuery('msProductLink', array(
    'link' => 1,
    'master' => 10
));
$q->select('slave');

if ($q->prepare() && $q->stmt->execute()) {
    $ids = $q->stmt->fetchAll(PDO::FETCH_COLUMN);
    print_r($ids);
}

Ну а получив id связанных товаров, можно делать с ними всё, что угодно. Возможности применения ограничены только вашей фантазией.

Примеры

Рекомендованные товары (выводятся в корзине, при оформлении заказа)

пример вывода рекомендуемых товаров

Комплекты товаров (выводятся ссылки на другие товары комплекта в карточке)

Комплекты товаров

Опции товаров

О том как создавать и выводить опции товаров miniShop2 я писал в отдельном уроке: Опции товаров miniShop2 — создание и вывод.

Поделиться с друзьями
Алексей

Веб-дизайнер и SEO оптимизатор. Занимаюсь созданием сайтов с 2010 года и их продвижение с 2012 года!

Оцените автора
( Пока оценок нет )
Web-Revenue.ru