Уроки minishop2 – Вывод каталога товаров и оформление заказа / Создание сайтов / Курсы обучения / bezumkin.ru

Содержание

Быстрый старт / miniShop2 / Компоненты / docs.modx.pro

  • Быстрый старт

miniShop2 поставляется со всеми необходимыми сниппетами и чанками. Для работы вам нужен MODX не ниже 2.3 и PHP не ниже 5.3.

Установка

  • Подключите наш репозиторий
  • Установите pdoTools - это библиотека для быстрой работы с БД и оформлением, необходима для многих компонентов
  • Установите Theme.Bootstrap - а это тем оформления Twitter Bootstrap для MODX, под неё заточены стандартные чанки магазина
  • Установите сам miniShop2

Для тестирования можно использовать наш хостинг, на нём эти дополнения можно выбрать прямо при создании сайта.

Шаблоны

Theme.Bootstrap устанавливает 2 шаблона, которые вы можете менять по своему усмотрению. Вы можете переименовать и использовать их, или создать новые.

Всего нам нужно 3 шаблона.

Общий

Это шаблон для вывода содержимого обычных ресурсов

<!DOCTYPE html>
<html lang="en">
    <head>
        [[$Head]]
    </head>
    <body>
        [[$Navbar]]
        <div>
            <div>
                [[*content]]
            </div>
            [[$Footer]]
        </div>
    </body>
</html>

Он будет использоваться для главной страницы и корзины.

Категория

Шаблон вывода категории с постраничным выводом товаров

<!DOCTYPE html>
<html lang="en">
    <head>
        [[$Head]]
    </head>
    <body>
        [[$Navbar]]
        <div>
            <div>
                [[!pdoPage?
                    &element=`msProducts`
                ]]
                [[!+page.nav]]
            </div>
            [[$Footer]]
        </div>
    </body>
</html>

Товар

Шаблон товара, вместо содержимого вызывается чанк из комплекта ms2

<!DOCTYPE html>
<html lang="en">
    <head>
        [[$Head]]
    </head>
    <body>
        [[$Navbar]]
        <div>
            <div>
                [[$msProduct.content]]
            </div>
            [[$Footer]]
        </div>
    </body>
</html>

Созданные шаблоны можно указать в системных настройках:

  • default_template - здесь указываем наш общий шаблон
  • ms2_template_category_default - шаблон категории
  • ms2_template_product_default - шаблон товара

Разделы

Главная страница у нас уже есть, просто назначаем ей "Общий" шаблон и пишем в контент:

[[!pdoMenu]]

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

Затем создаём категорию товаров и проверяем, чтобы у неё был шаблон "Категория".

После создания категории, добавляем в неё несколько товаров и проверяем их шаблон тоже.

Теперь осталось только создать корзину. Для этого создаём новую страницу с шаблоном "Общий" в корне сайта, и пишем там:

[[!msCart]]

[[!msOrder]]

[[!msGetOrder]]

Эти сниппеты выведут нам корзину, оформление заказа и покажут созданный заказ.

Они сделаны таким образом, чтобы что-то выводить только когда это нужно. Например, msCart и

msOrder прячутся, если в адресе страницы есть параметр msorder=id заказа, а вот msGetOrder наоборот, реагирует только на него.

Миникорзина

Всё, первичная настройка магазина окончена и уже можно заказывать товары.

В качестве финального штриха можно еще зайти в чанк Navbar и добавить там вывод миникорзины. Например, вот так:

<div>
    <!-- Это вывод меню, он есть по умолчанию -->
    <ul>
        [[pdoMenu?
            &startId=`0`
            &level=`1`
            &tplOuter=`@INLINE {{+wrapper}}`
        ]]
    </ul>
    <!-- А вот здесь добавляем миникорзину -->
    <ul>
        <li>[[!msMiniCart]]</li>
    </ul>
</div>

Дополнительные опций minishop2 - создание, кастомизация вывода и вывод единиц измерения

Автор Алексей На чтение 2 мин. Опубликовано

Последнее изменение поста: 23 октября 2018 в 22:58

Сегодня небольшой урок, о дополнительных опциях minishop2, а именно разберем: как создавать, выводить доп опции, как кастомизировать (изменить) вывод дополнительных и как вывести единицы измерения этих опций.

Создание дополнительных опций

Идем в Приложения — miniShop2 — Настройки, вкладка Опции и жмем на кнопку Создать.

Далее заполняем нужные свойства и сохраняем.

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

Кастомизация вывода дополнительных опций

По умолчанию за вывод доп опций отвечает чанк tpl.msProductOptions, делаем его копию с именем tpl.msProductOptions.custom и меняем вывод под себя, например у меня bootstrap 4 и вывод изменен так:

{foreach $options as $option}
    <div>
        <div><strong>{$option.caption}:</strong></div>
        <div>
            {if $option.value is array}
                {$option.value | join : ', '}
            {else}
                {$option.value}
            {/if}
        </div>
    </div>
{/foreach}

Далее в чанке msProduct.content (лучше тоже создать его копию), заменяем вызов [[msProductOptions]] на

[[msProductOptions? &tpl=`tpl.msProductOptions.custom`]]

Вывод единиц измерения доп опций

Для того чтобы вывести единицы измерения, достаточно в чанк tpl.msProductOptions.custom прописать:

{$option.measure_unit}

получаем.

{foreach $options as $option}
    <div>
        <div><strong>{$option.caption}:</strong></div>
        <div>
            {if $option.value is array}
                {$option.value | join : ', '} {$option.measure_unit}
            {else}
                {$option.value}
            {/if}
        </div>
    </div>
{/foreach}

Если остались вопросы, спрашиваем в комментариях.

miniShop2 / Каталог, Поиск, Фильтрация / Дополнения MODX / modstore.pro

Внимание, этот компонент требует версию PHP 5.3 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.

Внимание, этот компонент требует версию MODX не ниже 2.3 !

Custom Resources Classes


Самый главный момент, который даёт всё остальное — это CRC. Отсюда собственные страницы категорий, товаров, правила создания, требования прав и т.д. и т.п.

Страницы кастомизируются. То есть, в настройках miniShop можно указать где и какие поля отображать, что в таблице товаров категории, что в странице редактирования самого товара. Эта фишка, возможно, перекочует в ресурсы самого MODX.

Для узких экранов есть возможность перенести табы страницы слева вверх.

Табы товара и таблица категории запоминают своё состояние. Вы можете нажимать F5, ходить туда-сюда, они будет вам усердно помогать.

Переосмыслил старые привычные кнопки справа вверху, теперь там есть быстрый переход по соседним ресурсам быстрое удалениепубликация товара. Иконки на кнопках — glyphicons из Bootstrap.

Работа с мультикатегориями в miniShop сделана в виде дерева — так гораздо удобнее.

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

Галерея товара


MiniShop нацелен на скорость, поэтому мне пришлось взять работу с изображениями в свои руки. Ведь, всем известно, как сильно тормозит сайт на MODX при использовании phpthumbof и кучи фотографий с динамической генерацией уменьшенных копий.

Итак, галерея товара.

— Flash загрузчик через кнопку.
— Html5 загрузчик через drag-n-drop.
— Работа через media sources.
— Автоматическая генерация thumbnails заданных параметров.
— Редактирование имени и описания.

— Сортировка перетаскиванием. Первое изображение — основное для товара.

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

Фронтенд


MiniShop использует только свои modx сниппеты, работающие через pdoTools, что даёт нам повышенную скорость и кастомизацию. Вы можете легко переименовать стандартный modx сниппет, поменять под себя его логику и использовать.
Благодаря pdoTools особо напрягаться при переделке не придётся.

В комплекте идут modx сниппеты для вывода картинок, каталога товаров, их опций и корзины.

Все нужные стили и скрипты подключаются автоматически. Первичная настройка интернет-магазина на MODX Revo займёт от силы 10 минут.

Теги: шаблон интернет магазина MODX, modx сниппеты, сайты на modx

miniShop2 / Компоненты / docs.modx.pro

Продвинутый интернет-магазин для MODX Revolution.

Встроенная галерея товаров, быстрая работа через pdoTools и продуманный интерфейс управления.

  • Быстрый старт 03 мая 2019, 07:00
  • Интерфейс
  • Обновление 03 мая 2019, 07:00
  • Сниппеты
  • Разработка
  • Модули оплаты
    • Яндекс.Деньги 01 мая 2019, 07:00
    • Platron 01 мая 2019, 07:00
    • WebMoney 01 мая 2019, 07:00
    • msMerchant 01 мая 2019, 07:00
    • mspUP 01 мая 2019, 07:00
    • RBK Money
    • mspWebPay 01 мая 2019, 07:00
    • mspAssistBelarus 01 мая 2019, 07:00
    • mspPayU 01 мая 2019, 07:00
    • mspLiqPay 01 мая 2019, 07:00
    • mspYaCassa 01 мая 2019, 07:00
    • mspPayAnyWay 01 мая 2019, 07:00
    • mspBePaid 01 мая 2019, 07:00
  • Другие дополнения
    • ordersUnformed 03 мая 2019, 07:00
    • allGifts
    • msDiscount
    • msSMS 03 мая 2019, 07:00
    • msPromoCode
    • msYmarket 03 мая 2019, 07:00
    • msPromoCode2
    • msOptionsPrice 03 мая 2019, 07:00
    • msProfile
    • msQuickView 03 мая 2019, 07:00
    • msFavorites 03 мая 2019, 07:00
    • msBonus
    • msBonus2
    • msDaData 03 мая 2019, 07:00
    • msBuyNow 03 мая 2019, 07:00
    • msSetInCart 03 мая 2019, 07:00
    • msDellin 03 мая 2019, 07:00
    • mscDistance 03 мая 2019, 07:00
    • msNewPrice 03 мая 2019, 07:00
    • mscZone 03 мая 2019, 07:00
    • msProductRemains
    • Ms2form 03 мая 2019, 07:00
    • msEMS 03 мая 2019, 07:00
    • msAddLinked 03 мая 2019, 07:00
    • msSalePrice 03 мая 2019, 07:00
    • msOneClick 05 июня 2019, 07:00
    • msPointsIssue
    • msLiveInform 03 мая 2019, 07:00
    • msCategoryOptions

Обзор интерфейса miniShop2 / Создание сайтов / Курсы обучения / bezumkin.ru

Ну вот и пришла пора установить из репозитория компонент интернет-магазина miniShop2.

Это уже вторая версия моего решения для ведения интернет-коммерции на базе MODX Revolution. Она, конечно, не идеальна, но выгодно отличается от аналогов мощным пользовательским интерфейсом. Причем, судя по регулярным вопросам, которые я получаю, далеко не все знают о его возможностях.

Поэтому, давайте рассмотрим админку miniShop2.

Настройки

Для начала разберемся с самым простым — разделом настроек. Это обычная страница админки, с табами и таблицами.

Окно редактирования настроек вызывается через контекстное меню правой кнопкой мыши. Также можно редактировать основные поля двойным кликом по ним.

По умолчанию в настройках следующие разделы.

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

Здесь вы создаёте варианты доставки товаров, по умолчанию идёт один — самовывоз. У каждой доставки есть несколько свойств:
Способы оплаты

Разные способы оплаты, которые можно назначать доставкам. Обратите внимание, что в магазине есть куча готовых способов за разумные деньги.
Настройки следующие:
Статусы заказа
Вы можете создать любое количество произвольных статусов заказа и указать, кого и как нужно уведомлять о переключении на них.

Обязательными статусами (которые нельзя удалить) являются: Новый, Оплачен, Отправлен и Отменён.

Свойства статусов:

  • Цвет — просто цвет статуса, который будет отображаться в админке.
  • Письмо покупателю — нужно ли отправлять письмо покупателю о переключении заказа на этот статус? Если да — то укажите тему и чанк оформления. По умолчанию в теме используются записи из лексикона MS2.
  • Письмо менеджеру — то же самое, только письма уходят на email менеджеров, указанных в системной настройке ms2_email_manager. Если там пусто, то менеджером считается адрес в настройке emailsender.
  • Включен — если статус не включен, то на него нельзя переключить заказ.
  • Итоговый — если заказ переключен на этот статус, то больше статус поменять нельзя. По умолчанию итоговыми статусами являются Отправлен и Отменён.
  • Фиксирует — если заказ переключен на фиксирующий, то его нельзя переключить на предыдущий статус. То есть, если заказ Оплачен, то вы не можете переключить его в Новый.
Вы моежет добавлять сколько угодно статусов и переключить заказы на них в админке. Например: «Проверен», «Ожидает сборки» и т.п. Пользователь будет автоматически получать уведомления об этих изменения (если включено), а также видеть свой статус в личном кабинете Office, если вы его установите.

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

Я думаю, свойства описывать бессмысленно, кроме разве что «Ресурс» — это возможная связь со страницей описания бренда.
Учитывая, что все поля производителя доступны на странице товара через плейсхолдеры [[+vendor.name]], [[+vendor.description]] и т.п., вы можете вывести ссылку на описание производителя вот так:
Производитель: <a href="[[~[[+vendor.resource]]]]">[[+vendor.name]]</a>
Довольно удобно, как мне кажется.
Связи товаров
А вот этот раздел — очень интересная особенность miniShop2. Вы можете создать определенные виды связей товаров, а потом в настройках товаров связать их друг с другом.

Подробности вы можете прочитать в отдельной заметке.

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

miniShop2 устанавливает 2 особых типа ресурса в систему MODX: категории и товары. Отличаются они от обычных ресурсов собственным интерфейсом и логикой работы.

Например, у категории поле content вынесено на вторую вкладку, а на его месте красуется таблица с дочерними товарами категории.

Какие же есть особенности у категорий miniShop2?

Улучшенная панель кнопок: добавлены иконки Font Awesome, индикация цветом и быстрая навигация по соседним категориям.

Для быстрой навигации можно использовать быстрые клавиши: Alt + стрелочки вверх, вправо и влево. Если соседних категорий нет, то кнопки неактивны. Кнопка вверх отправляет вас именно в вышестоящий документ, а не на экран Home, как у других ресурсов.

Вы можете указать content по умолчанию для новой категории товаров в настройке ms2_category_content_default. По умолчанию там:

[[!pdoPage?
	&element=`msProducts`
]]

[[!+page.nav]]

Запоминается состояние вкладок — откройте «Настройки» и нажмите F5 — вкладка будет активной. Отключить можно настройкой ms2_category_remember_tabs.

Если на сайте установлен компонент Tickets, то у категории появится дополнительная вкладка с комментариями ко всем товарам этой категории.

Отключить можно настройкой ms2_category_show_comments.

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

Отключить можно ms2_category_show_nested_products.

В таблице есть поиск, сортировка нажатием на столбцы и она запоминает своё состояние. Если вы искали какой-то товар, затем перешли на него, вернулись — то таблица так и будет показывать найденный результат. Это поведение можно отключить настройкой ms2_category_remember_grid.

Родные товары категории (не от дочерних категорий) можно сортировать перетаскиванием.

Самое интересное: вы можете указать, какие поля товара нужно выводить в таблице через системную настройку ms2_category_grid_fields. Более того, вы можете быстро редактировать основные поля двойным кликом!

По умолчанию выводятся

pagetitle,article,price,weight,thumb,new,favorite,popular

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

Страница товара

Товар miniShop2 не является обычным ресурсом, не только потому, что у него собственная страница, но и потому, что к нему присоединена специальная таблица с дополнительными свойствами.

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

На главной панели товара вы видите основные свойства, картинку, 4 вкладки слева и дополнительные поля чуть ниже названия.

По умолчанию вы находитесь на первой вкладке «Веб-страница». Что именно выводить на ней указывается в системной настройке ms2_product_main_fields. По умолчанию там:

pagetitle,longtitle,introtext,price,old_price,article,weight,content,publishedon,pub_date,unpub_date,template,parent,alias,menutitle,searchable,cacheable,richtext,uri_override,uri,hidemenu,show_in_tree
Вся панель разбита на блоки, и в каждом выводятся определенные поля. Подробности здесь.

Обратите внимание, что вы можете указывать и свойства из msProductData, все они будут выведены в отдельном блоке:

Остальные свойства товара, которые не выведены на первой вкладке, выводятся на второй. Её содержимое указывается в настройке ms2_product_extra_fields. По умолчанию там

color,size,vendor,new,popular,favorite,made_in,tags
Естественно, преимущество у первой вкладки, поэтому, если вы указали одно и то же поле для двух панелей, оно будет выведено только на первой.

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

Затем у нас идёт галерея с мультизагрузкой и сортировкой перетаскиванием. Первая картинка из неё копируется в свойства товара image и thumb, чтобы их можно было выводить в каталоге без лишних join.

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

Ну и последняя вкладка — это связи товаров, которые мы создаём в настройках, а здесь выбираем с кем и как связать текущий товар.

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

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

Состояние табов панели товара тоже запоминается — можно отключить ms2_product_remember_tabs.

Вы можете отключить каждую из дополнительных вкладок товара, если вам они не нужны. За это отвечают три настройки: ms2_product_tab_extra, ms2_product_tab_gallery и ms2_product_tab_links.

Если у вас установлен компонент Tickets, то на панеле товара появится вкладка с комментариями к нему. Выключить можно настройкой ms2_product_show_comments.

Настройка ms2_product_source_default указывает источник медиа по умолчанию для галереи товаров, а ms2_template_product_default — умолчательный шаблон.

По умолчанию товары miniShop2 не показываются в дереве ресурсов, чтобы не нагружать его лишний раз, но вы можете изменить это поведение настройкой ms2_product_show_in_tree_default. Она действует только на вновь создаваемые товары, у уже существующих нужно будет отметить чекбокс при редактировании.

Вы можете выбрать превью какого размера показывать в галерее товара — за это отвечает настройка ms2_product_thumbnail_size. По умолчанию там 120х90, но если вы изменили настройки источника файлов, и убрали такой размер — то укажите здесь новый.

При выводе товара на сайте у него автоматически форматируются цена и вес. Вы можете настроить формат в параметрах ms2_price_format и ms2_weight_format.

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

Цена: 500.5
Вес: 15.5
Вы можете отключить обрезание нулей в настройках ms2_price_format_no_zeros и ms2_weight_format_no_zeros, тогда цифры будут:
Цена: 500.50
Вес: 15.500
Ну и наконец вы можете именовать товары по их id, вместо дружественных url — за это отвечает настройка ms2_product_id_as_alias.

Заключение

Насколько я понимаю, у miniShop2, на данный момент, самый богатый и удобный интерфейс управления товарами. Помимо возможности расширения стандартных классов (управления доставкой, оплатой, заказом и корзиной), это вторая его главная особенность по сравнению с конкурирующими решениями.

Советую также почитать старые заметки про интерфейс, возможно найдёте еще что-то интересное.

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

Добавление новых комментариев отключено.

Вывод каталога товаров и оформление заказа / Создание сайтов / Курсы обучения / bezumkin.ru

Ну что, с теорией разобрались, пора приступать к практике.

Сегодня мы создадим несколько товаров, выведем их на сайте, добавим в корзину и оформим. Наверное, этот урок будет интересен только совсем начинающим работать в MODX и тем, кто впервые видит miniShop2.

Итак, все товары miniShop2 должны принадлежать категории товаров — создадим её. Это можно сделать через контекстное меню, или переключением класса имеющегося ресурса:

Категория товаров — это ресурс MODX c необычным внешним видом и свойствами. В первую очередь, конечно, видно что поле content вынесено на вторую вкладку, а на его месте расположена таблица вложенных ресурсов.

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

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

Сниппет msProducts

Это основной сниппет для вывода каталога miniShop2. Он основан на pdoTools и обладает всеми его возможностями. В отличии от pdoResources, сниппет msProducts умеет:
  • Присоединять и выбирать свойства товара из таблицы msProductData
  • Присоединять и выбирать свойства производителя товара из таблицы msVendor
  • Присоединять и выбирать картинки из галереи товара — таблицы msProductFile
  • Фильтровать товары по их связям (параметры &link, &master и &slave)
  • Форматировать цену и вес, согласно системным настройкам.
  • При выводе цены и веча вызывать события для системных плагинов, которые могут их изменить (система скидок msDiscount)
  • Поддержка мультикатегорий товаров MS2. Это когда один товар выводится в разных категориях.
Конечно, вы можете пользоваться pdoResources для вывода каталога, но msProducts делает это гораздо лучше.

Простейший вызов msProducts выглядит так:

[[msProducts]]
Это выведет все товары, которые являются потомками текущей страницы на глубине вложения до 10.
[[msProducts?
	&parents=`4,5`
	&depth=`0`
]]
Это выведет только непосредственных потомков категорий 4 и 5.

Обычно вывод каталога комбинируют с постраничной разбивкой:

[[!pdoPage?
	&element=`msProducts`
	&limit=`10`
]]
[[!+page.nav]]

Вы уже знаете, как работает pdoTools, поэтому всегда можете включить &showLog=`1` и посмотреть, каким образом присоединяются таблицы, чтобы сортировать по полям товара:

[[!pdoPage?
	&element=`msProducts`
	&limit=`10`
	&sortby=`Data.price`
	&sortdir=`ASC`
]]
[[!+page.nav]]

Рекомендую еще прочитать отдельную заметку про msProducts.

Шаблоны товаров и категорий

Как мы помним, внешний вид ресурсов в MODX регулируется шаблонами. Нам нужно создать 2 новых: категория и товар.

Я просто копирую один из существующих шаблонов и меняю у него область контента. Например, вот так выглядит моя категория:

<!DOCTYPE html>
<html>
	<head>
		[[$Head]]
	</head>
	<body>
		[[$Navbar]]
		<div>
			[[$Crumbs]]
			<div>
				<h4>[[*pagetitle]]</h4>
				[[!pdoPage?
					&element=`msProducts`
				]]
				[[!+page.nav]]
			</div>
			[[$Footer]]
		</div>
	</body>
</html>
В основном содержимом страницы у нас вывод её названия и вложенных товаров.

Кстати, для редактирования шаблонов и чанков я настоятельно рекомендую вам компонент Ace.

Теперь осталось только назначить наш шаблон категориям и мы увидим наш каталог. Строка товара оформляется стандартным чанком сниппета msProducts — tpl.msProducts.row.

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

Советую еще указать шаблон по умолчанию для товаров в настройке ms2_template_product_default.

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

Корзина и оформление заказа

За вывод корзины отвечает сниппет msCart, который нужно вызывать на отдельной странице, некэшированным.

У него есть три чанка: оформление одного товара tpl.msCart.row, оформление всей таблицы tpl.msCart.outer и вывод пустой корзины tpl.msCart.empty.

За оформление заказа отвечает сниппет msOrder, его обычно располагают ниже корзины.
У него есть чанк общего оформления tpl.msOrder.outer, чанк для способа доставки tpl.msOrder.delivery, метода оплаты tpl.msOrder.payment и сообщения об успешном оформлении tpl.msOrder.success.

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

После оформления заказа вы попадает на эту же страницу, но уже с чанком успешного сообщения, которое показывает ваш заказ. При его создании покупателю и администратору отправляются письма (если вы не отключали это в настройках статуса «Новый»).

В общем, всё максимально автоматизированно.

Заключение

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

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

Если что-то непонятно — вы всегда можете зайти на страницу сниппет и посмотреть описание параметров. Например вот, msCart:

Если у вас есть вопросы по сегодняшней теме — задавайте!

Добавление новых комментариев отключено.

Дайджест интересных материалов из мира MODX #2 / Habr

Новости из мира MODX.Новые дополнения для MODX, интересные публикации и видео-уроки.

Дополнения для MODX Evolution

  • WP Import — Модуль импорта записей из WordPress.
  • FormLister — Сниппет для работы с формами и пользователями.
  • Jevix — Сниппет для фильтрации и типографирования.
  • evoAutoFolder — Плагин создания дерева папок по id ресурсов.

Дополнения для MODX Revolution

  • MinifyX 1.4.4-pl — Оптимизация JS и CSS. Обновление библиотеки Munee и др.
  • Foundation 6 1.0.0-beta2 — Шаблон на Foundation.
  • virtuNewsletter 2.1.1-pl — Система публикации новостей.
  • JsonFormBuilder 1.0.28-pl — Создание форм, описанных в JSON-массиве или отдельном PHP-сниппете.
  • CustomRequest 1.2.5-pl — Плагин для создания своих URL для ресурсов и удобного получения параметров запроса.
  • Videobox 5.0.0-pl — Сниппет для вывода видео и аудио на сайте. Поддерживаются источники: YouTube, Vimeo, SoundCloud и др.
  • pdoTools 2.5.0 — Новая версия с улучшенной поддержкой загрузки элементов из файлов.
  • MiniShop 2.4.0 beta2 — Создание интернет-магазина. Огромное количество изменений.
  • Shopkeeper 3.2.4 — Обновление компонента для создания интернет-магазина.

Интересные публикации

  • Добавить всех пользователей в группу
  • Программное создание пользователей
  • Система краудфандинга на miniShop2
  • Делаем колбеки miniShop2 для всех
  • Установка демо-сайта Shopkeeper 3
  • Права доступа в Источниках Медиа для контент менеджеров (ENG)

Видео-уроки

  • Обзор компонента Collections для MODX Revo. часть — 1
  • Ajax фильтр на MODx Revolution
  • Shopkeeper 3 — Каталог продукции
  • Уроки MODX. Обзор BackupMODX
  • Уроки MODX. Обзор MarkerGoogleMaps
  • Посадка типовой секции Landing Page на MODx с использованием MIGX (добавляемые поля)
  • Настройка прав доступа для контент-менеджера в MODX Revolution
  • Как сделать сайт на MODX за час?
  • MIGX DB CMP and XPDO in MODX Revolution (ENG)
Ссылки на материалы для последующих выпусков дайджеста можно присылать мне в ЛС или на почту modx-digestyandex.ru.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *