Создание сайтов на MODX /

Личный кабинет покупателя Office

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

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

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

Но это уже для продвинутых пользователей. А мы с вами рассмотрим применение «из коробки». Готовый результат можно посмотреть на демо-сайте.

Читать далее
Создание сайтов на MODX /

Компонент поиска и фильтрации mSearch2

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

Сегодня мы познакомимся с платным дополнение для MODX, которое осуществляет поиск и фильтрацию любых ресурсов — mSearch2.

Основные особенности:

  • Морфологический поиск сразу на нескольких языках. По умолчанию — русский и английский.

  • Обновление поискового индекса автоматически, при сохранении ресурса в админке.

  • Возможность задать «поисковый вес» каждому индексируемому полю ресурса.

  • Возможность индексации ТВ параметров и комментариев Tickets.

  • Поиск по ресурсам внутри админки сайта.

  • Сохранение поисковых запросов и управление синонимами слов.

  • Автоподсказки и быстрый поиск.

  • Ajax фильтрация результатов поиска с построением прямых url через History Api.

  • Возможность расширения класса фильтрации для прописывания собственной логики.

  • Гибкая работа с шаблонами оформления — для каждого фильтра есть возможность назначить собственные.

  • Высокая скорость работы и поиска, и фильтра.

  • Возможность выводить результаты поиска и фильтрации любыми сниппетами.

Читать далее
Создание сайтов на MODX /

Вывод каталога товаров и оформление заказа

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

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

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

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

Читать далее
Создание сайтов на MODX /

Обзор интерфейса miniShop2

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

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

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

Читать далее
Создание сайтов на MODX /

Большой рассказ про pdoTools, часть вторая

С классами pdoTools и pdoParser мы разобрались на прошлом занятии, а сейчас закроем тему большим рассказом про pdoFetch.

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

pdoFetch создаёт запрос и добавляет параметры через xPDO, а выбирает уже через PDO, что даёт защиту, гибкость и скорость.

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

Читать далее
Создание сайтов на MODX /

Большой рассказ про pdoTools, часть первая

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

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

Понятное дело, что через какое-то время я пришел к универсальным сниппетам «на все случаи жизни», которые и вошли в комплект pdoTools. Про них вы можете почитать на страницах документации, а ниже я расскажу, что же там под капотом.

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

Читать далее
Создание сайтов на MODX /

Базовые дополнения: Theme.Bootstrap, MinifyX и немного pdoTools

На прошлом занятии мы разобрались с шаблонизацией MODX, и теперь нам нужно создать собственный шаблон оформления страниц.

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

Лично я во всех своих сайтах создаю определённую структуру: небольшой шаблон, а в нём вызов чанков Head, Footer, Crumbs и контент. То есть, разделяю элементы сайта по функционалу.

Каждый раз делать одно и тоже мне давно надоело, поэтому я создал себе заготовку с CSS фреймворком Bootstrap. Она устанавливает в систему 2 готовых шаблона и несколько чанков. Также, для обеспечения базовой функциональности, из репозитория скачиваются pdoTools и MinifyX.

Читать далее
Создание сайтов на MODX /

Принципы шаблонизации MODX

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

С одной стороны, это очень гибко и круто — и за это MODX любят профессионалы. С другой стороны, нельзя скачать или купить готовый шаблон (на самом деле, сейчас уже можно) и двумя кликами преобразовать свой сайт — и за это MODX боятся новички.

Если вы знаете HTML хоть немного, то у вас не будет никаких проблем с оформлением сайта на MODX, и сейчас мы разберем это на реальных примерах. Конечно, чтобы нам было веселее, работать будем на самой свежей версии MODX 2.3.1, которая вышла сегодня ночью.

Читать далее
Создание сайтов на MODX /

Новый курс обучения

Предлагаю вашему вниманию новый курс занятий, посвященный созданию сайта на MODX Revolution, используя популярные дополнения:

Никаких особых секретов в этом нет, просто подробная пошаговая информация, что как и почему работает, и как лучше делать.

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

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

Читать далее
Путешествия /

Турция: обзорные экскурсии по Анталии и Алании

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

Цена на Анталию $20, а на Аланию — $45. И это, вроде как, даже не за саму поездку, а за обед в ресторане. Учитывая, что из отеля забирают в 8 утра, а привозят в 7 вечера — непонятно, почему такие смешные расценки. По идее, за один бензин нужно больше платить.

Но все становится очевидным, когда узнаёшь, что это не просто обзорный тур, а шоппинг-тур! То есть, целый автобус отдыхающих и, наверняка, небедных людей возят по городу и забрасывают во вполне определенные магазины драгоценностей, меха\кожи, текстиля, ну и в ресторане напитки платные.

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

Читать далее
Личный блог /

Немножно про пиратство

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

Василий, добрый день!

У меня такое предложение:

Вы можете сделать, чтобы после покупки и установки/обновлении пакета, в core/packages установочные пакеты удалялись?

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

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

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

Читать далее
Путешествия /

Турция: день первый

В аэропорт Кемерово, мы как умные люди, прибыли за 2.5 часа до посадки. Конечно же, аэропорт Кемерово начал посадку через 3.5 часа — куда им торопиться?

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

Полет длился 6.5 часов, но к этому я уже был готов после полёта в Германию. Там у меня был телефон со старой музыкой и большой ноутбук, который без интернета в самолёте непонятно зачем нужен. А в эту поездку я взял с собой только телефон с подкастами от kino-govno.com и планшет с XCOM: Enemy Unknown, которую я до сих пор не прошел ни на PC, ни на PS3 — хотя начинал и там и там.

Конечно, с таким запасом полёт прошел совершенно незаметно. Стюардесса даже ругалась, что я ловлю инопланетян во время посадки самолёта!

Читать далее
born2slip
pishnaa istntome
22.11.2022 14:06
огромное спасибо! )
inetlover
Александр Наумов
14.11.2022 10:19
посмотри документацию. Спасибо, что-то она мне не нагуглилась. Это просто функции объединения для о...
bezumkin
Василий Наумкин
10.11.2022 05:46
Спасибо за поздравления!
inetlover
Александр Наумов
09.11.2022 17:08
Посмотрел в ДевТулсе свойство overscroll-behavior: none; присутствует, проверил в Chrome и Chromium ...
bezumkin
Василий Наумкин
03.11.2022 20:57
Поискать в исходниках ссылки на её адрес и поменять - скорее всего только nuxt.config.js. А зачем эт...
ni.kolokol@mail.ru
Николай Каленников
03.11.2022 19:43
Спасибо. Попробую тоже с нуля переставить
inetlover
Александр Наумов
03.11.2022 19:24
Спасибо!!! Все заработало!
bezumkin
Василий Наумкин
28.10.2022 05:23
В тексте есть подсказка // Контроллер требует новое разрешение protected $scope = 'ord...
bezumkin
Василий Наумкин
27.10.2022 13:25
Понял, спасибо!
inetlover
Александр Наумов
23.10.2022 13:33
Понял, спасибо!