01 октября 2025, 16:35 У меня есть компонент работающий через migxDB и несмотря на тип поля JSON в MariaDB оно всеравно экранируется `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '{}' CHECK (json_valid(`name`)),{\"uz\":\"Abdusattarov Axmadjon Abdiraxim o\\u2018g\\u2018li\",\"ru\":\"\\u0410\\u0431\\u0434\\u0443\\u0441\\u0430\\u0442\\u0442\\u0430\\u0440\\u043e\\u0432 \\u0410\\u0445\\u043c\\u0430\\u0434\\u0436\\u043e\\u043d \\u0410\\u0431\\u0434\\u0438\\u0440\\u0430\\u0445\\u0438\\u043c \\u0443\\u0433\\u043b\\u0438\",\"en\":\"\"} Вопросы / MIGX и хранение в JSON 3 0
01 октября 2025, 16:01 поскольку MIGX сохраняет данные в JSON внутрь таблицы modx_site_tmplvar_contentvalues где значение является строка видимо это невозможно, вот я сам и дал себе ответ… Тут как вариант написать плагин который будет сохранять MIGX поля в отдельную таблицу где будет тип данных JSON и уже оттуда делать выборку когда потребуется. Но может есть тут юди кто тоже занимался решнием похожей пробелмы и подскажут более лучшее решение? Вопросы / MIGX и хранение в JSON 3 0
12 ноября 2024, 07:35 страниц много, но как вариант возможно. В целом конечно пока не совсем понятно как лучше настроить контроль версий, я вот пока все сунул в Docker где внутри контейнеры nginx mariadb php и исключил папку cache из контроля версий. Однако репозиторий теперь весит 1.8гб… но это уже другая история Вопросы / Что удаляется в папке core/cache после того как нажали кнопку "Очистить кэш" в админке? 7 0
11 ноября 2024, 16:14 после этого сайт для первых пользователей будет загружаться дольше обычного, очистка кэша из панели управления не удаляет все из папки cache Вопросы / Что удаляется в папке core/cache после того как нажали кнопку "Очистить кэш" в админке? 7 0
16 октября 2024, 16:23 судя по тому что я нарыл в источниках js она вызывает action — system/clearcache Однако после ее нажатия в папке cache по прежнему много файлов и папок и удаляется далеко не все, отсюда и вопрос, как мне например при переносе в bash скрипте автоматом удалить папки и файлы чтобы избежать простоя на время пока я залогинюсь в админке и нажму на эту кнопку на сайте настроен ci/cd и поэтому при перезаписи сайт ломается пока кэш не очистишь Вопросы / Что удаляется в папке core/cache после того как нажали кнопку "Очистить кэш" в админке? 7 0
16 октября 2024, 16:21 ну это я читал, я так и не понял сама кнопка запускает refresh или clearcache Вопросы / Что удаляется в папке core/cache после того как нажали кнопку "Очистить кэш" в админке? 7 0
20 сентября 2024, 12:21 Я пробовал так, в итоге происходит так, что при релизе сайта с одного окружения (stage) на другое (prod) методом миграции базы данных, мигируются и системные настройки, и пока ты вручную не удалишь папку cache полностью либо не откроешь сайт несколько раз, чтобы переписались системные настройки из статичных файлов — будут выводиться конфиги из бд. Я же полностью отказался от хранения в базе данных контур-зависимых параметров в пользу констант внутри файла config.inc.php — поскольку при миграции с одного контура на другой этот файлик не перезаписывается. Вопросы / Использование системных настроек из файла конфигурации 3 0
19 сентября 2024, 10:24 Реализовал через константы в файле config.core.php и вывод через феном в {$.const.CONSTANT} Вопросы / Использование системных настроек из файла конфигурации 3 0
17 сентября 2024, 11:35 а ну такое не подходит( у меня очень много вложенных конфигураций для каждой tv создать то еще веселье) у меня около 150 конфигураций) Вопросы / Как перенести конфигурации migx в статичные файлы из БД? 8 0
17 сентября 2024, 09:12 А есть туториала о том как компоненты с конфигурациями migx пилить? Вопросы / Как перенести конфигурации migx в статичные файлы из БД? 8 0
16 сентября 2024, 19:01 Это понятно, а как подключить файл чтобы все конфигурации цеплялись из статичных файлов а не из бд Вопросы / Как перенести конфигурации migx в статичные файлы из БД? 8 0
30 августа 2024, 09:39 Но ссылка тоже не совсем удобно, поскольку она генерит 301 редиректы, и вручную нужно вставлять ссылку на документ — нельзя выбрать через медиаисточник Вопросы / Использование статичного ресурса для вывода pdf 4 0
30 августа 2024, 08:48 Думаю уже не актуально, но может будет кому полезно, добавил модификатор fenom который выводит размер файла и его расширение. Создать плагин и повесить его на событие pdoToolsOnFenomInit Вызывать в виде {'linkToFile' | getFileInfo} <?php /** Функция обрабатывает размер файла в байтах в человекочитаемый формат добавляя к размеру файла размерность, например 128 Mb */ if (!function_exists("human_filesize")) { function human_filesize($bytes, $decimals = 2) { $sz = ["B", "Kb", "Mb", "Gb", "Tb", "Pb"]; $factor = floor((strlen($bytes) - 1) / 3); return sprintf("%.{$decimals}f", $bytes / pow(1024, $factor)) . " " . @$sz[$factor]; } } /** @var modX $modx */ switch ($modx->event->name) { case "pdoToolsOnFenomInit": /** @var Fenom $fenom Мы получаем переменную $fenom при его первой инициализации и можем вызывать его методы. Например, добавим модификатор вывода имени домена сайта из произвольной ссылки. */ $fenom->addModifier("getFileInfo", function ($input) { if (file_exists($input)) { return strtoupper(pathinfo($input, PATHINFO_EXTENSION)) . ", " . human_filesize(filesize($input), 0); } }); break; } Вопросы / Размер и расширение файла из статического ресурса 2 0
30 августа 2024, 08:33 это когда генерируешь страницу — да будет работать, у меня же задача прицепить сам файл pdf Вопросы / Использование статичного ресурса для вывода pdf 4 0
29 августа 2024, 13:43 А нашел, для этого можно использовать тип ресурса Ссылка Вопросы / Использование статичного ресурса для вывода pdf 4 0
28 августа 2024, 17:00 и далее создал копию файла assets/components/msearch2/action.php Назвал ее assets/filters/action.php Заменил 'results' => !empty($results) ? $results : $modx->lexicon('mse2_err_no_results'),На 'results' => !empty($results) ? $results : $pdoFetch->getChunk($scriptProperties['tplEmpty'], []),Далее в файле js который указывается в системных настройках, у меня он assets/js/filters.min.js Поменял assets/components/msearch2/action.php на assets/filters/action.php PS может как-то могу поспособствовать добавив это изменение в будущие версии mFilter2? тут правда не реализована проверка запыленности этого банка, но вроде как это не сложный функционал, на msearch2 он есть Вопросы / Как правильно задать свой блок "Ничего не найдено" в mFilter2 7 0
28 августа 2024, 16:44 Еще не совсем понимаю как ловится событие post в mfilter2 я думал плагином, а в итоге нет, как оно работает? Понял, в файле assets/components/msearch2/action.php вся логика Вопросы / Как правильно задать свой блок "Ничего не найдено" в mFilter2 7 0
28 августа 2024, 16:37 в итоге вот к чему пришел Заменил все вхождения $modx->lexicon('mse2_err_no_results')на $mSearch2->pdoTools->getChunk($scriptProperties['tplEmpty'], $output, $fastMode);Добился того что при загрузке страницы mfilter2 отдает чанк из параметра tplEmpty Теперь осталось докрутить чтобы при Ajax работало а то сейчас отдает запись словаря Вопросы / Как правильно задать свой блок "Ничего не найдено" в mFilter2 7 0
28 августа 2024, 16:25 Это не всегда удобно, поскольку уведомление может быть разным, например Шуб по вашим критериям не найдено Штанов по вашим критериям не найдено и тд, я вот пока склоняюсь к добавлению поля tplEmpty и настроить обработку чтобы отдавал чанк если пусто а не запись словаря Вопросы / Как правильно задать свой блок "Ничего не найдено" в mFilter2 7 0
28 августа 2024, 14:27 Судя по сниппету mFilter2 он действительно не поддерживает стилизацию сообщения об отсутствии результатов под капотом if (!empty($toSeparatePlaceholders)) { $modx->setPlaceholders($output['filters'], $toSeparatePlaceholders); $output['log'] = $log; if (is_array($output['filters'])) { $output['filters'] = implode($outputSeparator, $output['filters']); } $pcre = '#^' . preg_quote($toSeparatePlaceholders) . '(\d+)$#'; $tmp = array(); foreach ($modx->placeholders as $k => $v) { if (preg_match($pcre, $k)) { $tmp[] = $v; } } $output['results'] = !empty($tmp) ? implode($outputSeparator, $tmp) : $modx->lexicon('mse2_err_no_results'); $modx->setPlaceholders($output, $toSeparatePlaceholders); } Вопросы / Как правильно задать свой блок "Ничего не найдено" в mFilter2 7 0
Возможно ли реализовать возможность предоплаты за доставку на сайте? У меня Робокасса, у них вроде есть docs.robokassa.ru/ru/iframe
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 18 px. Да и текст комментариев можно таким сделать. Для меня лично 16 — мелковато на больших экранах (в комментариях вообще 15 ...
MiniShop3 1.11.0 при клике на radio идет пересчет итоговой суммы в orderUI, в зависимости от способов(оплаты доставки) я так поняла. попробуй код запуска события поставить ниже чем orderUI, после
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeV... Добавил localizator3_default_language
msInShopNotify Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3 Минимальные требования: PHP 8.4 MODX 3.2 MiniShop3
MaxNotify Обновление 1.2.0-pl (03.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`; — добавлены уведомления о заявках SendIt через hook-...
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurre... Да, планируется. Даже чуть больше, чем просто бонусная система)
В целом конечно пока не совсем понятно как лучше настроить контроль версий, я вот пока все сунул в Docker где внутри контейнеры nginx mariadb php и исключил папку cache из контроля версий. Однако репозиторий теперь весит 1.8гб… но это уже другая история
Однако после ее нажатия в папке cache по прежнему много файлов и папок и удаляется далеко не все, отсюда и вопрос, как мне например при переносе в bash скрипте автоматом удалить папки и файлы чтобы избежать простоя на время пока я залогинюсь в админке и нажму на эту кнопку
на сайте настроен ci/cd и поэтому при перезаписи сайт ломается пока кэш не очистишь
Вызывать в виде {'linkToFile' | getFileInfo}
assets/components/msearch2/action.php
Назвал ее
assets/filters/action.php
Заменил
На
Далее в файле js который указывается в системных настройках, у меня он assets/js/filters.min.js
Поменял assets/components/msearch2/action.php на assets/filters/action.php
PS может как-то могу поспособствовать добавив это изменение в будущие версии mFilter2?
тут правда не реализована проверка запыленности этого банка, но вроде как это не сложный функционал, на msearch2 он есть
Понял, в файле assets/components/msearch2/action.php вся логика
Заменил все вхождения
на
Добился того что при загрузке страницы mfilter2 отдает чанк из параметра tplEmpty
Теперь осталось докрутить чтобы при Ajax работало а то сейчас отдает запись словаря
Шуб по вашим критериям не найдено
Штанов по вашим критериям не найдено и тд, я вот пока склоняюсь к добавлению поля tplEmpty и настроить обработку чтобы отдавал чанк если пусто а не запись словаря