Top.Mail.Ru
code image
notebook image
code image
code image
Подробный курс:

Профессиональная разработка интернет-магазинов на MODX

Опыт и практика от разработчика более 50 интернет-магазинов и 150 сайтов
Изучите процесс создания продающих, дорогостоящих и функциональных интернет-магазинов на платформе MODX в углублённом курсе
365дней
доступ и обновление

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

  • 55+ практических видео уроков и постоянное обновление
  • Закрытый чат профессионалов для обмена опытом
  • База знаний для учеников - ответы на все вопросы
  • Личная проверка заданий с обратной связью от эксперта

Кому подойдет этот курс

Опытным разработчикам
Кто хочет быть в курсе нестандартных решений и новинок
Новичкам
Кто быстро учится и хочет забронировать цену курса
Работникам веб-студий
Кто хочет получать больше за свою работу, а работать меньше
Предпринимателям с опытом программирования
Тем, кто хочет создавать собственные сайты быстрее и качественнее
Владельцам веб-студий
Кто хочет поднять свои цены и обучить сотрудников (группам скидки)
Фрилансерам программистам
Кто хочет иметь больше клиентов и более высокий доход
Опытным разработчикам
Новичкам
Работникам веб-студий
Предпринимателям с опытом программирования
Владельцам веб-студий
Фрилансерам программистам

Почему этот курс?

Нестандартные решения, повышающие эффективность интернет-магазина

  • Объёмная теория с реальными примерами в видео-формате
  • Методы оптимизации для высоконагруженных интернет-магазинов
  • Практические задания с обратной связью и разбором ошибок
  • База знаний с ответами на все частые вопросы
1 Месяц
Окупаемость вложений учеников

Какие выгоды?

Решения, которые уменьшают время вашей работы, а значит повышают эффективность
Скидка 20% на дополнения modstore.pro
Единственный курс, который рассказывает, как и за что увеличивать стоимость своей работы
Эксклюзивное предложение от хостинга Timeweb: Бесплатная 1 неделя работы с VDS*
(*на тарифе Danny)

Что будет на курсе?

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

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

Урок 1. Развертывание MODx из готовой сборки, установка компонентов, настройка IDE, gulp и git.
Вы научитесь пользоваться готовой сборкой MODx и экономить значительное время при развертывании новой установки MODx перед разработкой сайта. Также вы научитесь использовать gulp для того, чтобы эффективно использовать свое время и не тратить его на рутину, а git для того, чтобы всегда иметь возможность восстановить сайт в случае поломки.

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

Урок 2. Особенности установки и работы с gitModx и pdoTools с дальнейшей разработкой в IDE
Вы научитесь использовать расширение gitmodx, которое позволит вам экономить время на этапе разработки, а также хранить весь ваш код в git-репозитории, что существенно повысит надежность вашего сайта, даже в случае сбоев в базе данных.

В данном уроке мы разберем установку gitmodx и настройку pdoTools при работе со свежей установкой MODX, устанавливаемой стандартным способом.

Урок 3. Развертывание шаблона и быстрая разбивка на общие чанки
Вы научитесь существенно экономить время при первичной интеграции шаблонов в MODx, повышая тем самым свою эффективность

В рамках данного урока при помощи gulp-тасков и дополнительных скриптов сборки вы сможете существенно сократить время на первичную интеграцию шаблонов в MODX.

Урок 4. Настройка ClientConfig и создание общих настроек сайта
Вы поймете как разграничивать настройки по степени их важности и защищать самые важные из них от менеджеров интернет-магазина, повышая тем самым надежность вашего сайта, а также вы научитесь разделять настройки по назначению для локального сервера и production-сервера

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

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

Даже если вы уже имеете опыт работы с пакетом MiniShop2, данный урок будет вам интересен с точки зрения хранения настроек в файлах (при работе с пакетом gitmodx) для надежного хранения важных параметров в системе контроля версий git.

В этом уроке мы сделаем обзор всех интерфейсов и важнейших настроек настроек MiniShop2.

Урок 6. Первичная настройка FormIt+AjaxForm. Разбор предстоящих ситуаций. Пару слов о кастомизации и правильном расширении.
Вы научитесь правильно расширять возможности связки двух компонентов AjaxForm и FormIt, а также использовать свои наработки в дальнейшем для более эффективного распределения своего рабочего времени

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

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

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

Урок 8. Права в MODX. Настройка прав группы пользователей для покупателей.
Вы разберетесь с устройством системы прав доступа MODx на практике, что позволит вам в дальнейшем создавать более гибкие многопользовательские сайты.

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

Урок 9. Права в MODX. Настройка отдельной группы пользователей для редакторов контента.
Вы научитесь защищать важные страницы сайта в админке от редактирования менеджерами интернет-магазина.

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

Урок 10. Права в MODX. Создание отдельной группы пользователей для менеджеров заказов магазина.
Вы научитесь давать разрешения менеджерам магазина только на просмотр и редактирование заказов, что позволит защитить страницы и настройка от случайного или намеренного изменения пользователями админки.

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

Урок 11. Создание базовой структуры ресурсов, установка Collections и сохранение идентификаторов страниц
Вы зафиксируете все важнейшие идентификаторы страниц в отдельном наборе настроек pages.inc.php, что позволит вам отказаться от использования прямых ID страниц. В свою очередь, это позволит вам в дальнейшем создавать мультиязычные и мультидоменные сайты, а также экономить время при смене важнейших страниц сайта.

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

Урок 12. Настройка общих меню и ссылок, настройка типовых блоков на главной странице.
Вы настроите отображение вернего меню, ссылок в футере, а также всех блоков на главной странице, которые не относятся напрямую к функциям интернет-магазина.

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

Урок 13. Настройка страницы о компании. Установка MIGX.
Вы настроите шаблон страницы "О компании" и разберетесь с базовой настройкой компонента MIGX, чтобы отобразить список файлов ресурса. Также вы сможете выяснить способы альтернативного хранения изображений без использования платного компонента ms2Gallery

В этом уроке мы настроим шаблон страницы "О компании", параллельно установим компонент MIGX для создания списковой TV для вывода списка файлов ресурса. Поговорим про возможные варианты вывода изображений без использования ms2Gallery.

Урок 14. Раздел новостей и акций. Разбор pdoPage
Вы настроите страницу новостей, а также научитесь использовать pdoPage для постраничной ajax-загрузки содержимого с помощью кнопки "Показать еще".

В этом уроке мы произведем настройку всех блоков на странице "Новости" и на странице отдельной новости, за исключением блока со слайдером товаров, а также настроим постраничный вывод новостей и акций при помощи сниппета pdoPage с ajax-загрузкой содержимого по кнопке "Показать еще".

Урок 15. Настройка простых текстовых страниц.
Вы настроите отображение текстов и изображений в шаблоне текстовой страницы

В этом уроке мы настроим вывод слайдеров, вывод текстов и изображений на странице шаблона text_page, за исключением вывода слайдера с товарами.

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

В этом уроке поговорим про три страницы "Для покупателей", "Для производителей" и "Для дистрибьюторов". Они имеют частично схожую структуру, но также имеют уникальные блоки. Настроим страницу "Для покупателей" и поговорим об особенностях вставки javascript-кода в содержимое страницы.

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

По аналогии со страницей "Для покупателей" мы произведем настройки всех блоков на странице с использованием MIGX и стандартных TV-полей. Также поговорим о предстоящей защите файлов от скачивания незарегистрированными пользователями и получении информации о файле при помощи сниппета fileInfo, котрый мы будем использовать в качестве модификатора.

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

По аналогии с двумя предыдущими страницам мы произведем настройки всех блоков на странице с использованием MIGX и стандартных TV-полей, используя наработки из предыдущих уроков.

Урок 19. Настройка страницы Контакты. Почтовая отладка при локальной разработке. Кастомная валидация в FormIt.
Вы научитесь создавать и кастомизировать формы обратной связи, создавать произвольные валидаторы полей, защищать формы от ботов без снижения конверсии, а также настраивать произвольный вывод уведомлений и ошибок при заполнении и отправке формы.

В этом уроке мы настроим страницу "Контакты", но подробно остановимся на настройке формы обратной связи: напишем кастомный валидатор для проверки поля в зависимости от значения другого поля, поговорим о том, как вести отладку писем при разработке на локальном сервере и как кастомизировать вывод ошибок при работе с AjaxForm.

Урок 20. Настройка специальных страниц (404, 503, 401)
Вы научитесь правильно настраивать страницы ошибок 404, 401, 503

В этом коротком уроке мы настроим шаблон страницы 404 и поговорим о настройке специальных страниц при генерации ошибок 404, 401, 503

Урок 21. Подготовка к программированию функций интернет-магазина. Импорт тестовых данных. Разбор структуры каталога.
Вы разберетесь со структурой учебного каталога сайта и сможете импортировать на сайт набор тестовых товаров, имитирующих реальный интернет-магазин

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

Урок 22. Настройка страницы товара. Вывод файлов, контента и меню категорий.
Вы настроите меню категорий, описания и файлов товара, а также вывод общих блоков на странице товара магазина.

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

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

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

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

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

Урок 25. Организация хранения остатков. Расширение модели msProductData
Вы научитесь правильно расширять стандартную модель товара и закрепите эти знания на примере нового поля для хранения остатков.

В этом уроке мы поговорим о возможных способах хранения остатков товара и подробно рассмотрим принцип расширения стандартной модели данных товара msProductData полем count.

Урок 26. Настройка страницы группы товаров. Сниппет для сборки рекомендуемых дочерних товаров.
Вы создадите собственный сниппет для сборки общих характеристик группы товаров и отображения их на странице, и сниппет для сборки рекомендуемых дочерних товаров группы.

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

Урок 27. Вывод товаров на странице группы товаров. Расширияем pdoPage: кастомная сортировка и фильтр на основе pdoPage.
Вы научитесь создавать фильтры по опциям товара и любым полям модели msProduct и msProductData. Также вы сможете реализовать уникальный способ отображения и сортировки товаров на странице группы товаров.

Данный урок посвящен принципу реализации более сложных блоков, основанных на выводе товаров при помощи pdoPage. Мы реализуем javascript-расширение для pdoPage, а также сниппет-обертку для msProducts, которые позволят реализовать логику фильтра по опциям товара или любым другим полям модели msProduct или msProductData, а также сортировку и способ отображения ячейками или списком.

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

В этом уроке мы сделаем настройку общих блоков на странице категории товаров, после чего выведем товары аналогично тому, как мы это делали на странице группы товаров, и настроим блок сортировки товаров.

Урок 29. Страница категории. Фильтр по наименованию. Разбор устройства параметра where pdoTools
Вы разберетесь с параметрами критериев выборки сниппетов pdoTools и miniShop2, а также сможете реализовать фильтрацию товаров по наименованию с учетом потенциально уязвимых мест.

В этом уроке мы реализуем поле фильтрации товаров по наименованию, а также подробно разберем принцип формирования критериев выборки, передаваемых в параметре where сниппета на основе pdoTools (pdoResources, msProducts, ms2GalleryResources и другие).

Урок 30. Страница категории. Расширение фильтра по опциям.
Вы расширите фильтр по опциям товаров, а также разберетесь с принципами хранения фильтруемых параметров в базе данных для более отпимального отображения на странице.

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

Урок 31. Вывод категорий на странице каталога. Форма поиска. Слайдеры новинок.
Вы настроите вывод категорий на странице каталога, завершите настройку поиска товаров, а также сможете настроить вывод новинок на прочих страница сайта.

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

Урок 32. Реализация добавления в корзину и вывод корзины. Разбор логики работы.
Вы разберетесь в стандартном устройстве корзины товаров miniShop2, а также реализуете добавление товаров в корзину.

В этом уроке мы реализуем добавление товара в корзину, сделаем отображение мини-корзины и вывод товаров на странице корзины, а также разберем логику работы корзины miniShop2.

Урок 33. Кастомизация корзины. Настройка отображения стоимости каждой позиции. Расширение класса msCartHandler.
Вы научитесь кастомизировать корзину miniShop2 при помощи правильного расширения возможностей класса msCartHandler. Вы сможете реализовать отображение итоговой стоимости отдельной позиции в корзине, а также изменять количество товара в корзине без дополнительного действия для пересчета стоимости.

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

Урок 34. Кастомизация корзины при помощи callback-функций. Кастомизация сообщений.
Вы научитесь кастомизировать javascript логику компонентов miniShop2 при помощи callback-функций. Также вы научитесь создавать произвольную логику отображения статусных уведомлений miniShop2.

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

Урок 35. Учет опций при добавлении в корзину. Создание произвольных опций.
На этом уроке вы закрепите свои знания по логике работы корзины miniShop2, а также реализуете возможность добавления в корзину товаров с дополнительными опциями (в том числе нестандартными), указанными непосредственно перед добавлением.

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

Урок 36. Кастомизация цены в корзине при помощи плагина
Вы научитесь расширять логику работы корзины при помощи плагинов MODX на примере создания скидки на отдельные позиции в корзине в зависимости от динамических параметров.

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

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

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

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

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

Урок 39. Расширение стандартной модели хранения заказа. Расширение backend-интерфейса minishop2
Вы научитесь расширять стандартный набор полей модели msOrder, менять логику оформления заказа, а также кастомизировать формы интерфейса админки minishop2 при помощи плагинов и ExtJS.

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

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

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

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

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

Урок 42. Авторизации при помощи встроенного процессора
В этом уроке вы научитесь использовать встроенные процессоры modx и в частности вы разберетесь, как осуществлять авторизацию через готовый процессор login, реализующий более широкую логику, чем хук, который мы написали в рамках предыдущего урока.

В этом уроке мы создадим альтернативный хук для формы авторизации, который будет использовать готовый системный процессор MODX — security/login. Данный процессор реализует более широкую логику, чем код, написанный нами на предыдущем уроке.

Урок 43. Регистрация пользователей и расширение стандартного процессора регистрации
Вы научитесь пользоваться встроенным процессором регистрации user/create, который позволяет регистрировать пользователя и учитывать внутреннюю логику безопасности MODX.

В этом уроке мы настроим регистрацию пользователей при помощи стандартного встроенного процессора user/create. Данный процессор реализует всю базовую необходимую логику проверки полей пользователя, сложности пароля и совпадения с подтверждением пароля.

Урок 44. Регистрация пользователя во время совершения заказа
В этом уроке вы научитесь кастомизировать логику регистрации пользователя во время совершения заказа в интернет-магазине и отправлять пользователю данные для личного кабинета после создания заказа.

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

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

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

Урок 46. Форма редактирования личных данных профиля
В этом уроке вы научитесь создавать форму для редактирования личных данных и настроек профиля пользователя с учетом прав пользователя

В этом уроке мы реализуем форму, находящуюся на странице "Настройки профиля" на основе FormIt и нового хука fiSettingsProcessorHook, обращающегося к расширенному системному процессору обновления личных данных пользователя

Урок 47. Форма редактирования пароля
В этом уроке вы научитесь создавать форму для редактирования пароля пользователя на странице настроек профиля

В этом уроке мы реализуем форму для изменения пароля, находящуюся на странице "Настройки профиля" на основе FormIt и нового хука fiChangePasswordProcessorHook, обращающегося к расширенному системному процессору обновления личных данных пользователя

Урок 48. Страница заказов в личном кабинете
В этом уроке вы научитесь отображать в личном кабинете информацию о заказах, совершенных пользователем

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

Урок 49. Форма для восстановления пароля
В этом уроке вы научитесь создавать форму для безопасного восстановления забытого пароля пользователя

В этом уроке мы реализуем 2 формы: для отправки запроса на восстановление пароля и для установки нового пароля пользователя, параллельно разберем работу с регистрами MODx.

Урок 50. Расширение модели modUser для хранения доп. информации о пользователях.
В этом уроке вы научитесь расширять стандартную модель пользователя произвольными полями при помощи отдельной таблицы БД

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

Урок 51. Страница поддержки. Настройка защиты файлов от прямого скачивания
Вы научитесь защищать файлы от прямого скачивания и создавать произвольную логику проверки права на скачивание файла

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

Урок 52. Интеграция с платежным сервисом. Настройка платежей.
Вы научитесь создавать свой собственный обработчик платежей на примере самостоятельной интеграции с популярным банком

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

Урок 53. Интеграция с платежным сервисом. Обработка проведения платежа.
Вы научитесь принимать запрос от платежного сервиса после успешного или неуспешного совершения платежа на стороне сервиса и соответствующим образом переводить заказ в статус "Оплачен" или "Отменен"

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

Урок 54. Интеграция с CRM
В этом уроке вы поймете принципы интеграции сайта и внешней CRM системы, а также создадите модуль, реализующий отправку и прием данных в CRM

В рамках этого урока мы разберем принципы интеграции сайта и CRM системы на примере популярной системы Bitrix24. Опираясь на данные из официальной документации и базовый исходный код класса для работы с CRM мы создадим хук для FormIt, осуществляющий создание лида в CRM системе, а также плагин для тех же целей, срабатывающий при создании нового заказа в интернет-магазине. Помимо этого мы создадим основу для приема данных из CRM и разберем способы синхронизации между данными в CRM и на сайте.

Урок 55. Мультиязычные сайты. Основы.
В этом уроке вы научитесь применять встроенные механизмы MODX для отображения переводов отдельных фраз на сайте.

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

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

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

Урок 57. Основы импорта и экспорта товаров во внешние системы
Вы научитесь создавать произвольные классы для загрузки и выгрузки не только товаров, но и любых других сущностей modx во внешние системы, в том числе и в 1С.

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

Продажи. Урок 1. Как навык продаж может помочь на фрилансе.
Вы разберетесь для себя с базовым понятием продаж, разберетесь, из каких этапов состоит продажа, а также выясните для себя отдельные психологические особенности продаж в сфере IT.
Продажи. Урок 2. Работа с потенциальным клиентом: навык коммуникации для увеличения возможности “продажи”
В этом уроке вы узнаете, из каких этапов состоит коммуникация между заказчиком и исполнителем, а также разберетесь с немаловажным фактором установления доверия
Продажи. Урок 3. Работа с потенциальным клиентом: навык коммуникации для увеличения возможности “продажи” Часть 2
Вы научитесь работать с возражениями клиента, а также определите для себя систему работы с клиентом.
Продажи. Урок 4. Личный бренд, как его транслировать в соц сетях для получения новых заказов
Вместе мы разберемся с тем, насколько важную роль играет понятие личного бренда, разберем, какие преимущество могут быть у вашего личного бренда и разложим по полочкам его структуру.
Продажи. Урок 5. Личный бренд, как его транслировать в соц сетях для получения новых заказов. Часть 2
Разберем личный бренд на составляющие, выясним, какие платформы подходят для развития личного бренда, а также разберемся с вопросом отсутствия личного бренда — осознанный ли это выбор или миф?
Продажи. Урок 6. Цифровой этикет: нюансы деловой переписки
Что такое цифровой этикет? Из каких базовых элементов он строится? На что обращать внимание при переписке с клиентом по вашему проекту? Как структурировать сообщения, чтобы коммуникация была более эффективной? С этими вопросами мы разберемся в рамках данного урока.

Кто ведет курс

«Я прошёл опыт от штатного разработчика до фрилансера, а затем и до владельца собственной веб студии. Я знаю, как сложно обходить свои “затыки” в работе, как объяснять клиентам важность решений, и как необходимы советы и помощь единомышленников.»

Артем Зернов

Все эти вопросы я успешно решил и создал курс, который поможет вам пройти этот путь значительно быстрее и результативнее.
разработчик с 15 летним стажем, автор курса
Проекты и компании, с которыми я работал:
ArtPictures
ArtPictures
Создан мультиязычный сайт для киностудии Федора Бондарчука
Сколково форум
Сколково форум
Разработан концептуальный сайт для компании Сколково Форум
Starflot
Starflot
Разработан сайт-поисковик по крупнейшим туроператорам речных и морских круизов России
Aer Group
Aer Group
Разработан сайт-каталог продукции и реализованных объектов для компании-поставщика климатического и технологического оборудования
Director's Cut
Director's Cut
Разработан лаконичный сайт-портфолио для креативного агентства "Режиссерская версия"
Best Production
Best Production
Разработан сайт компании Best Production, осуществляеющей полный спектр услуг по разработке и проведению ярких рекламных кампаний.
Sunwheel
Sunwheel
Разработан мультидоменный сайт интернет-магазина Sunwheel, торгующего электротранспортом и аксессуарами

Как проходит обучение?

  • Приобретаете курс
  • Получаете доступ к базе знаний, урокам курса, к закрытому чату, базе ЧаВо
  • Изучаете уроки в удобное время
  • Выполняете домашние задания
  • Получаете обратную связь от спикера по заданиям
  • Выполнив все задания, получаете сертификат о прохождении курса
Более 70 учеников прошли мои курсы, и 21 проходят обучение в данный момент.

Да, вы можете изучать самостоятельно, но:

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

Стоимость обучения

3 месяца обучения
55+ уроков
Дополнительные материалы
Обсуждение с участниками
Исходный шаблон
Исходный код автора
Финальный код автора
Доступ на 365 дней
Структура рабочего проекта и используемые технологии в рамках курса
Структура рабочего проекта и используемые технологии в рамках курса
MODX
php
git
gulp

Часто
задаваемые вопросы

  • Можно ли изучать курс, если я работаю?
    Да, у вас есть год на доступ к курсу, при этом весь процесс обучения построен так, что вы можете изучать после работы или в выходные.
  • Можно ли взять клиента и изучать курс параллельно?
    Да, сделайте скидку вашему клиенту и предупредите о том, что срок будет чуть больше. Срок изучения курса в спокойном режиме — 2 месяца. Можно изучить в режиме 8 часов/5 дней и потом возвращаться для повторения.
  • Даст ли сертификат преимущества?
    Конечно да! Сертификат показывает, что вы не только прошли курс и изучили очень востребованные навыки, но ещё и имеете активную позицию к развитию.
  • А что, если я не смогу пройти курс из-за нехватки знаний?
    Во время курса вы получаете доступ к базе для повторения или изучения основ, а доступ к курсу у вас будет на протяжении 1 года, поэтому вы всегда успеете дополнить свои знания и пройти курс вовремя.
Мы используем куки на нашем сайте. Продолжая просмотр, вы соглашаетесь с условиями пользовательского соглашения
Пожалуйста, подождите. Процесс оформления заказа может занимать до 30 секунд.