Для разработчиков

ZoomX. Фреймворковский подход к разработке

Привет, друзья! На днях вышла третья версия компонента ZoomX, которая позволяет взглянуть на разработку в MODX немного под другим углом. Как известно, MODX позиционирует себя не только как CMS, но и как CMF. Но под этим определением скрывается всего лишь возможность использования API MODX. В современном мире разработки при упоминании слова «фреймворк» всплывают другие ассоциации — абстракции, роутинг, сервисный слой, SOLID, тонкие контроллеры, RESTful API и т.п.

Сергей Шлоков
21 октября 2021, 21:14
modx.pro
2
974
+24

Конструктор фильтров и выборок - msProductsComposerSelection

Я обещал написать @Prihod обзорную статью анонсировав новые возможности компонента, так как @Prihod пилил последние версии пакета по моей инициативе. Момент настал. И не прошло трех лет после моего обещания.

Сразу начну с минуса, для меня он единственный, и очень мучительный. Название — msProductsComposerSelection — это как запомнить, написать или обсудить с коллегами. Шутка удалась. Ну я предлагаю тебе не останавливаться на достигнутом и придумать название из шести горбов). Будет весело.
Олег Щавелев
08 сентября 2021, 04:36
modx.pro
1 535
+8

PageBlocks - первое использование. Кейсы. Свой сниппет вывода.

Очень хочу поделиться своими впечатлениями от использования пакета PageBlocks от разработчика @Aleksandr Huz. Буду краток, пакет классный (Я люблю изъясняться кратко и по делу).
Олег Щавелев
06 сентября 2021, 07:08
modx.pro
2
1 208
+11

Почему AjaxForm использует сессии?

Всем привет, давно не виделись!

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

Казалось бы, совершенно заслуженный камень в мой огород, как автора дополнения. Зачем использовать сессии для ajax сниппетов, ведь сама по себе эта технология сессий не требует? Так-то оно так, но в мире MODX всё несколько сложнее.
Василий Наумкин
04 августа 2021, 10:03
modx.pro
1
2 654
+20

Поиск источника ошибки Instantiated a derived class

Всем привет!

На одном из сайтов стала появляться ошибка следующего содержания:
Instantiated a derived class CollectionContainer that is not a subclass of the requested class ArticlesContainer

которая забивала Журнал ошибок за 2-а дня на 60 мб.

Поиск источника по БД, через сниппеты, через Batcher и другие способы не принесли результата.

Иван Бочкарев
23 мая 2021, 22:39
modx.pro
4
1 162
+17

Как я написал YandexMarket2 на Vue.js

Привет, сообщество!

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

Так вышло, что я уже больше двух лет активно не разрабатывал сайты на MODX, позабыл Ext JS, быстро привык к Vue.js на фронте, к PHP 7+ с автозагрузкой классов и захотел привнести это в нашу систему. Изначально планировал сделать компонент со слабой связанностью с MODX, чтобы можно было легко портировать на MODX3, а то и на другие системы. Скажу сразу: внедрить всё не удалось, а то бы до сих дорабатывал первую версию.

Заметкой хочу показать процесс и удобство разработки компонента, а может и подтолкнуть кого-то ещё написать компонент с интерфейсом на Vue.js, а то и полноценную админку для MODX4 (шутка. или нет :)
Евгений Шеронов
23 мая 2021, 22:13
modx.pro
3 831
+27

[ИНТЕРЕСНО] Server-Sent Events - Уведомления с сервера в браузер в реальном времени

Всем привет! Искал простой способ отправлять уведомления о смене статуса заказа в браузер пользователя. Из вариантов были websocket и сторонние сервисы push-уведомлений. С websocket я разобраться не смог, пробовал запустить workerman на shared-хостинге, но не вышло. Сторонние сервисы вроде sendpulse или comet-сервера не устраивают, потому что они сторонние, их оставлю на крайний случай.

И совершенно случайно я наткнулся на Server-Sent Events. Всё с ними хорошо, кроме одного, опытным путём я понял, что он должен быть запущен всегда, т.е. нельзя запустить его из другого скрипта и передать параметры. Или можно, если кто-то знает как, напишите в комментариях.

Так или иначе я его для своих задач приспособил. Вопрос такой: насколько это будет нагружать сервер и, если никто не знает, то подскажите как можно провести тест под нагрузкой? Предполагается от 1 до 5 тысяч клиентов одновременно.
Артур Шевченко
17 мая 2021, 20:14
modx.pro
1
758
+1

Альфа релиз альтернативной админки для MODX

Всем привет!

В продолжение недавней дискуссии публикую то, что удалось сделать за два дня (точнее за 23 часа).



Fi1osof
11 апреля 2021, 14:11
modx.pro
3
1 825
+17

Помогите протестировать PR для ускорения выпуска Revolution 3.0

MODX 3 приближается к замораживанию функции перед бета-циклом и последующим релизом. Так как нам нужна максимально возможная помощь в тестировании и проверке ключевых проблем и Pull Requests («PRs»), мы создали это учебное пособие по подходу для тех, кто не привык жить в командной строке и работать с git'ом каждый день.

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

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

Иван Бочкарев
21 февраля 2021, 23:11
modx.pro
2
1 578
+21

[СДЕЛАЙ САМ] Поиск на сайте по-быстрому

ВАЖНО!!!

Данное решение не является учебным и рекомендуется к использованию только на собственных проектах, с целью освоения работы с api modx. Для изучения лучших практик, анализируйте код дополнений с сайта https://modstore.pro/

Я знаю, что есть два отличных компонента для организации поиска по сайту это SimpleSearch, который по-моему не работает с чанками на fenom, и mSearch2, который платный и большой. В связи с этим я решил написать свой вариант поиска — максимально простой и понятный, да неуниверсальный, но позволяющий по нескольким ключевым словам найти нужный ресурс. По сути это форма. которая через ajax отправляется на сервер, где формируется sql-запрос в БД и результат возвращается на фронт. Итак перейдём к коду.
Артур Шевченко
22 января 2021, 21:08
modx.pro
5
2 457
+10