Murashkin
С нами с 19 июня 2015; Место в рейтинге пользователей: #443[MIGX] Исправляем "сжатые" таблицы
Спам в формах AjaxForm/FetchIt? Защищаем ЛЮБЫЕ точки входа в MODX с помощью IskWaf

Всем привет!
В Telegram-чате регулярно поднимается один и тот же вопрос: «Как защититься от спама в форме? У меня стоит FetchIt или AjaxForm, капчу на странице вывел, а спам всё равно летит тоннами!»
Я решил эту проблему в своем компоненте IskWaf (MODX3 / MODX2), и в этой заметке хочу рассказать, как теперь можно обеспечить тотальную защиту вашего сайта.
autoRedirector - Не сохраняется ресурс/контейнер
Зависает на этапе сохранения — ресурс контейнер
MODX 2.8.6
php 8.2.11
В журнале Ошибок Modx Пусто!
Ошибки в консоли:
POST nko-expert.ru/connectors/index.php 500 (Internal Server Error)
Uncaught {message: 'JsonReader.read: Json object not found'}
Ошибка в логах сервера:
mod_fcgid: stderr: PHP Fatal error: Uncaught TypeError: array_merge(): Argument #2 must be of type array, xPDOIterator given in /var/www/vhosts/sites.ru/site.ru/httpdocs/core/cache/includes/elements/modplugin/22.include.cache.php:27, referer: site.ru/manager/?a=resource/update&id=527
Если снести плагин — сохраняется нормально!
Проверял на разных хостингах!
Работает на php 7.4.33
Начиная с версии php 8.0.30 Не работает!
MODX 2.8.6
php 8.2.11
В журнале Ошибок Modx Пусто!
Ошибки в консоли:
POST nko-expert.ru/connectors/index.php 500 (Internal Server Error)
Uncaught {message: 'JsonReader.read: Json object not found'}
Ошибка в логах сервера:
mod_fcgid: stderr: PHP Fatal error: Uncaught TypeError: array_merge(): Argument #2 must be of type array, xPDOIterator given in /var/www/vhosts/sites.ru/site.ru/httpdocs/core/cache/includes/elements/modplugin/22.include.cache.php:27, referer: site.ru/manager/?a=resource/update&id=527
Если снести плагин — сохраняется нормально!
Проверял на разных хостингах!
Работает на php 7.4.33
Начиная с версии php 8.0.30 Не работает!
Антиспам для FormIt с генерацией случайной строки
SummerFloors - редактируемые планы помещений
Понадобилось сделать svg карту склада. Директор оплатил создание компонента с визуальным редактором полигонов. К счастью, нашел компонент https://github.com/summerstyle/summer, который идеально подошел в качестве основы редактора.


modx + webp просто и надежно - автоматически

Недавно нашел удачный плагин для преобразования картинок/рисунков в webp в автоматическом режиме — плагин сам решит поддерживает ли браузер webp и отдаст ему кэш страницы с webp, а если нет (apple) то отдаст обычную страницу… От вас ничего не требуется кроме установки плагина, не из репозитория (на странице все расписано).
ImgsPaste - дружелюбная вставка фотографий из ms2Gallery, MIGX в контент
Встречайте новый пакет и мое первое творение в виде платного пакета для modx — ImgsPaste v1!
** Поддержка MIGX и ms2Gallery в редакторах TinyMCE Rich Text Editor и CKEditor
Позволяет простым образом вставлять в контент статьи из MIGX галереи фотографию как тег или набор фотографий в оформленном, размеченном html виде (в неограниченном количестве и местах), к которому можно самому добавить слайдер, «увеличивалку» ну и все что посчитаете нужным.
Не делал из коробки подключение js библиотек, т.к. большинство людей пользуются разными решениями — нет смысла тащить лишнее.
Этот инструмент необходим каждому контент менеджеру или владельцу сайта.
** Поддержка MIGX и ms2Gallery в редакторах TinyMCE Rich Text Editor и CKEditor
Позволяет простым образом вставлять в контент статьи из MIGX галереи фотографию как тег или набор фотографий в оформленном, размеченном html виде (в неограниченном количестве и местах), к которому можно самому добавить слайдер, «увеличивалку» ну и все что посчитаете нужным.
Не делал из коробки подключение js библиотек, т.к. большинство людей пользуются разными решениями — нет смысла тащить лишнее.
Этот инструмент необходим каждому контент менеджеру или владельцу сайта.
Группировка выдачи pdoResources по родителю
Всем привет!
Столкнулся с проблемой, вывожу сниппетом pdoResources категории и дочерние элементы указывая &depth = `1`,
выводит сперва все дочерние элементы, а после список категорий, как можно сделать так, чтобы выводился родитель, а следом его дочерние элементы, основным критерием решения является избежать вызов сниппета pdoResources внутри чанка (так задача решается очень просто в ущерб производительности)
Столкнулся с проблемой, вывожу сниппетом pdoResources категории и дочерние элементы указывая &depth = `1`,
выводит сперва все дочерние элементы, а после список категорий, как можно сделать так, чтобы выводился родитель, а следом его дочерние элементы, основным критерием решения является избежать вызов сниппета pdoResources внутри чанка (так задача решается очень просто в ущерб производительности)
Шпаргалка на все случаи жизни
Полезные ссылки, которые Вам пригодятся в некоторых ситуациях.