Интернет-Магазин Minishop Для Modx Revolution

Я хотел бы представить сообществу компонент для MODX Revolution, который легко превратит обычный сайт в интернет-магазин.



Интернет-магазин MiniShop для MODX Revolution

Он не претендует на звание лучшего магазина в обозримой вселенной и, вероятно, проиграет всем специализированным для этого движкам, но в нише магазинов для Revo будет ровно третьим.

После VisionCart И Лавочник .

Итак, вот мой минимагазин .

На демо-сайте вы можете увидеть все как снаружи, так и внутри.

административная часть ( логин и пароль – демо ).

Расширение полностью с открытым исходным кодом и бесплатно.

Для интересующихся подробности ниже.



Монтаж

Проводится через менеджер пакетов, пара кликов сразу из репозиторий .

Оттуда тоже будут поступать обновления (магазин в разработке).

После установки вам необходимо создать 2 шаблона для категорий и товаров и указать их в настройках.



Категории и продукты

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

Чтобы отличить одно от другого, используйте разные шаблоны.

Кроме того, категории должны быть контейнерами.

Шаблоны для них необходимо указать в системных настройках компонента (Switch namespace to minishop).

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

И хотя большинство проголосовало за таблицы, в ходе обсуждения я понял, что буду делать всё в ресурсах.

И вот почему: 1. Вы можете использовать настройки телевизора.

2. Вы можете использовать контексты.

3. Вы можете использовать все стандартные фрагменты.

4. Вы можете использовать группы ресурсов и права доступа.

5. Кэширование работает «из коробки».

6. Удобные URL-адреса для каждого продукта.

Вы можете продолжить самостоятельно.

Недостатков не вижу, скорость вполне хорошая (на демо-сайте 15 000 товаров).

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

Для этого не нужно лазить по дереву ресурсов.

Компонент имеет удобную фильтрацию по категориям, наименованию товара и артикулу, поэтому при многих сотнях/тысячах позиций ничего не потеряется.



Интернет-магазин MiniShop для MODX Revolution



Складские помещения

Компонент поддерживает неограниченное количество складов.

Параметры для каждого настраиваются отдельно.

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

Товары на данный момент имеют 4 основных свойства: артикул, изображение, цена и баланс.

Все 4 свойства привязаны к соотношению склад-товар.

Также добавлено 3 дополнительных свойства для разных нужд. 2 varchar(255) и 1 текст.

Интернет-магазин MiniShop для MODX Revolution

То есть у вас вроде бы все товары есть на всех складах одновременно, но везде они могут иметь разные свойства (или одинаковые).

Это обеспечивает богатые возможности управления.

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

Если баланс равен 0, не выставляйте товар и не разрешайте его заказывать.



Мультикатегории

Это фича, ради которой (но не только!) мне пришлось написать свой магазин.



Интернет-магазин MiniShop для MODX Revolution

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

Никаких ограничений нет. При отображении продуктов через фрагмент msGetResources все продукты извлекаются по категориям.

Также есть сортировка по всем свойствам, как ресурсным, так и товарным.

Этот фрагмент включен и представляет собой модифицированный getResources (также используется его класс).

Таким образом, один товар отображается в разных категориях.



Статусы

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

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



Интернет-магазин MiniShop для MODX Revolution

Во время установки создается статус «Новый» с включенными уведомлениями.

Уведомление менеджеру уходит на почту склада (там их можно указать несколько через запятую).

При переключении статуса заказа в компоненте это действие сохраняется в истории изменения заказа и отправляется (или нет) уведомление в соответствии с настройкой этого статуса.



Каталог на сайте

Все операции с корзиной, добавление/удаление товаров и оформление заказа происходят через Ajax. Требуются jquery 1.7+, jquery.form 2.8+ и удобные URL-адреса.

В целом, на мой взгляд, фронтенд пока слабоват, но непонятно, чего хотят люди.

У всех разные требования к оформлению заказа, регистрации пользователей и т.д. Поэтому загляните в $_SESSION['minishop'] и при необходимости напишите свои сниппеты.

В моем варианте оформления заказа пользователь идентифицируется по электронной почте, если ее нет в базе, то он регистрируется со случайным паролем (потом его можно сбросить и поменять на свой - это и есть регистрация =)).

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

Адрес можно изменить в админ-панели в свойствах заказа.

Там же можно изменить количество товаров.

В основном классе есть зачатки выбора из этих адресов при заказе, но пока всё закомментировано - ибо нестабильно.

После оформления заказа сессия пользователя очищается.

При работе с корзиной возвращается json-строка со статусом, сообщением, количеством товаров и суммой корзины.



Интернет-магазин MiniShop для MODX Revolution



Личный кабинет

Эту булочку выпустили буквально сегодня.

Требуется авторизация (фрагменты входа или входа в систему).

Аккаунт сделан на ExtJS, как и админка MODX, в него загружаются все скрипты из менеджера, а стили оформления взяты из CDN Sencha. С одной стороны это выглядит тяжеловато, но с другой из него можно сделать очень крутой кабинет. Пока отображается список всех заказов, с историей изменения товаров и статусов, вы можете отслеживать судьбу посылки.

Учитывая безлимитность статусов, здесь из админки можно публиковать даже «Менеджер Петя упаковал товар в упаковку».



Интернет-магазин MiniShop для MODX Revolution

Для использования аккаунта на моем сайте вам необходимо до При оформлении заказа авторизуйтесь под своим логином и закажите что-нибудь.

я свой отредактирую чуть позже фрагмент Логина чтобы он мог изменить свойства пользователя в аккаунте (ФИО, адрес и т.п.

).

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



Заключение.

Пакет содержит все необходимые фрагменты и чанки для создания простого магазина.

Как ими пользоваться, напишу позже (по крайней мере попробую) см.

руководство , и вы всегда можете посмотреть демо-сайт. Проект еще очень молодой, о нем мало что знают, но со временем, я думаю, он вырастет. Я активно его развиваю и отказываться от него не планирую.

В наших ближайших планах добавление платежных систем и выпуск готовой сборки MODX с настроенным мини-магазином.

Я добавил оплату через z-pay.ru и сделал скрипты для автоматической установки .



Ссылки

Домашняя страница проекта + документация + демо (включая панель администратора) Исходный код на Github Пакет в репозитории MODX Демонстрация скорости P.S. Пожалуйста, не критикуйте меня слишком резко.

Помните, что это расширение движка MODX Revolution, а не отдельный проект. Также укажите ошибки в трекер на Гитхабе .

Теги: #modx Revolution #интернет-магазин #minishop #ModX

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.