Консультации через Skype

Еще в январе я купил пару книг, оплатил аккаунт разработчика iOS и написал своё первое приложение «Hello word!» для iPhone и iPad.

С тех пор я к этой теме не прикасался, потому что был постоянно чем-то занят. На данный момент основные дела закончены:

  • Хостинг Simple Dream работает и умеет практически всё необходимое
  • Сообщество modx.pro успешно держится на плаву
  • Документация docs.modx.pro тоже работает
  • Магазин-репозиторий Simple Dream успешно помогает всем желающим, техподдержка успешно справляется.
  • Все мои основные дополнения поддерживают версию MODX 2.3
  • Курсы обучения по созданию простого сайта на MODX успешно закончены
Наконец-то можно снова попробовать освоить разработку мобильных приложений. Естественно, за самообразование никто не платит, а прибыль от продажи дополнений в магазине и выручка от хостинга меня пока прокормить не могут.

В связи с чем вопрос: если я начну иногда оказывать платные консультации страждущим через Skype — это кому-то интересно? Мне видится это так:

Читать дальше

Продолжение истории про Сибтур

Как известно, недавно я был в отпуске (а кажется, что уже давно) и там была прекрасная история, как Наталья из Сибтура оформляла нам поездку.

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

И вот свежие новости:

Читать дальше

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

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

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

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

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

Читать дальше

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

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

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

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

  • Морфологический поиск сразу на нескольких языках. По умолчанию — русский и английский.
  • Обновление поискового индекса автоматически, при сохранении ресурса в админке.
  • Возможность задать «поисковый вес» каждому индексируемому полю ресурса.
  • Возможность индексации ТВ параметров и комментариев Tickets.
  • Поиск по ресурсам внутри админки сайта.
  • Сохранение поисковых запросов и управление синонимами слов.
  • Автоподсказки и быстрый поиск.
  • Ajax фильтрация результатов поиска с построением прямых url через History Api.
  • Возможность расширения класса фильтрации для прописывания собственной логики.
  • Гибкая работа с шаблонами оформления — для каждого фильтра есть возможность назначить собственные.
  • Высокая скорость работы и поиска, и фильтра.
  • Возможность выводить результаты поиска и фильтрации любыми сниппетами.

Читать дальше

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

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

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

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

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

Читать дальше

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

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

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

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

Читать дальше

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

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

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

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

Читать дальше

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

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

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

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

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

Читать дальше

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

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

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

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

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

Читать дальше

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

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

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

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

Читать дальше