56 минут назад
Каждое предработное утро я начинаю с чтение новостей. И первым всегда идёт MODX.pro.
От такого дайджеста на меня костюм-тройка чуть сам не налез, б...
Дайджест форума за октябрь 2025 глазами DeepSeek 4
1 час назад
Собственно переговоры прошли успешно, в понедельник передаст мне компонент, к концу месяца будет работать.
[CDEKIntegrate] Отправка заказов напрямую в CDEK 18
30 октября 2025, 19:01
Два дня проковырялся, пытаясь сделать по этому конфигу.
Один сайт сразу завелся, остальные вместо перехода на страницу редиректят на главную — чудо н...
Настройка конфигурации NGINX + PHP-FPM 7.4 на Ubuntu 22.04 + Fastpanel для MODX 2.8.7 13
30 октября 2025, 17:34
да да, могу пообедать?
Modx 2.8.8 + minishop 2 какая версия php поддерживается? 13
30 октября 2025, 16:28
mFilter3 планируется да. Концепта еще никакого нет, я не знаю где ты нашел подробности. Скорее всего это будет принципиально другой подход в работе.
...
MiniShop3 - новости 30
28 октября 2025, 22:14
Сам себе отвечу: так как FormIt умеет только прикреплять файл к письму, для чего он файл грузит во временную директорию, надо отдельным хуком переноси...
GoogleSheets. Компонент для работы с Google таблицами. 27
26 октября 2025, 19:22
всё, спасибо.
надо было понизить версию PHP -_//
[СДЕЛАЙ САМ] SendIt и MiniShop2 - заказ в 1 клик - быстро, просто и бесплатно. 66
23 октября 2025, 21:08
Сам отвечу, может кому-то пригодится.
В классе компонента и его плагине есть проверки статуса заказа. Если статус отличный от «новый», то там сраз...
Вопрос по mspYaPay 1
23 октября 2025, 13:18
Ну не знаю, только устарновил Sendit и у форм c AjaxForm появились уведомления
[СДЕЛАЙ САМ] Поиск на сайте по-быстрому 31
Всего 125 264 комментария
В идеале вообще автоматизировать и качать всё новое бесплатное из репозитория MODX / modstore, распаковывать и забивать в БД:
— название: MODX или дополнение
— версия дистрибутива
— путь к файлу
— sha1 хэш файла
Так-то я знаю, что в leftJoin указываются соответствия строк таблиц, но что после объявления псевдонима дальше используется только он — это я забыла. Спасибо!
Подкидываю альтернативную идею, если интересно — проверять версию MODX (или брать из настроек), скачивать соответствующий дистрибутив, и проверять хэши файлов сайта по файлам дистрибутива.
То есть, берём оригинальные файлы index.php в connectors, manager и корне, а так же файлы из core — и проверяем, чтобы все они присутствовали на сайте с оригинальным хэшем.
Если все основные файлы не изменены, то сайт не заражён и должен работать корректно.
Правда, есть еще возможность заражения только файлов дополнений, без ядра. Наверное, можно и их сверять с дистрибутивами из репозитория по той же логике — скачать нужную версию и сравнить хэши…
Кстати, вот вам еще идея — создать онлайн базу для проверки хэшей файлов MODX и дополнений через API. Чтобы простые GET запросы, типа /api/hash/modx/2.8.1/core/model/modx.class.php возвращали sha1 хэш запрошенного файла или 404.
Конечно, это не спасёт от уже залитых шеллов и вредоносов, но они не будут запускаться через сайт. А если запустятся и что-то изменят, то следующая проверка это покажет. И если раз за разом файлы будут меняться — то можно уже более внимательно искать, что там такое у вас залито.
И кажется ты не понимаешь что это за магические письмена
Первым аргументом в метод leftJoin передаётся имя класса ('goodStarVoteCount'); вторым псевдоним для таблицы ( 'countaverage'), если не передать будет взято имя класса; третьим аргументом передаётся условие соединение таблиц как в операторе ON в SQL ( 'modResource.id = countaverage.thread').
На чистом SQL запрос будет примерно таким
Как видишь в секциях SELECT и ON используется псевдоним таблицы, в xPDO тоже надо использовать псевдонимы, если они указаны в leftJoin или setTableAlias. Поэтому вот это всё
неверно, должно быть так
И наконец, чтобы проверить какой же запрос будет выполнен можно сделать так
Установил, настроил, капча выводится, но если не чекнуть её и отправить форму получаю ошибку: Журнал ошибок ModX пуст.
Modx 3.1.2-pl, YaSmartCaptcha 1.0.2-pl, Formit 5.1.1-pl.
В логе сервера такая ошибка:
Подскажите, пожалуйста, может я что-то не так настроил?
Кто ещё не нажал кнопочку «Отправить деньги» в разделе «Поблагодарить автора» под анонсом поста — самое время всем это сделать!
он же там потом разрастаться будет и никто из разработчиков про это помнить не будет.
Хочется отдельный файл лога — почему не положить рядом со стандартным errors.log что-то типа
?
Сайт был версии 2.7.2
Зараженные директории:
- assets/components/formit/js/mgr/widgets/migrate.panel.php
- assets/components/migx/js/mgr/widgets/grids/migxgallery.grid.php
- assets/components/pdotools/js/pdopage.min.php
Сам код во всех файлах одинаковыйНу и да как уже выше писали на уровень выше корня сайта были созданы директории:
.local, .config — в которых и была пакасть.
Компоненты обновил, систему обновил, дрянь удалил.
3й День пока все ок
Но там ведь нет возможности указать периодичность запусков заданий. Только можно указать точное время запуска.
При такой структуре Scheduler'а, для достижения периодичности выполнения нужно будет реализовать логику самоперепланирования внутри скриптов, а первый запуск придется сделать вручную. Это как-то не очень удобно не находите? и не очень надежно. Если вы знаете в каком компоненте есть реализация нормальной работы с этим планировщиком напишите. я гляну, вдруг что-то не так понимаю.