Дима Касаткин
С нами с 09 июля 2022; Место в рейтинге пользователей: #41Вчера в 23:58
Как всегда обновленный транспортный пакет ждет вас в релизах
MiniShop3: Notification Center — Революция в управлении уведомлениями 1
30 ноября 2025, 16:21
Надеюсь все решится все в ближайшее время
ImgsPaste - дружелюбная вставка фотографий из ms2Gallery, MIGX в контент 52
28 ноября 2025, 17:12
Ребята, это нормально что при в режиме Импорт товаров — недоступен импорт остатков (msProductRemains)?
А в режиме импорта остатков не доступны TV и г...
msImportExport 918
26 ноября 2025, 11:39
Дмитрий. первые две строки в вашем логе — это не ошибки. Это предупреждения о плохом коде. Они сами по себе ничего не ломают.
Настоящая проблема у в...
Релиз miniShop2 ver. 4.4.1 & 4.4.2 18
25 ноября 2025, 13:49
Здравствуйте, устанавливаем msProductRemains перестаёт добавлять в корзину, по логам добавляет, на странице корзины ошибка minishop2 not defined и соо...
[msProductRemains] Остатки без свойств и другое 3
25 ноября 2025, 07:08
Отлично. Ну еще проблему с путями решить и норм) Но судя по комментам о Thumb2x, картинки весят больше, чем после обработки pthumb — что тоже ставит н...
Thumb3x: Современная обработка изображений для MODX 3 34
24 ноября 2025, 21:36
Этого не будет
Thumb2x — это мощный и гибкий компонент для обработки изображений 8
24 ноября 2025, 11:50
Добрый день, это только у меня не подтягивает id страницы? prnt.sc/E-kSiVYnK-9d
easyComm 1.15.0 большой апдейт: ответы, улучшенные файлы и многое другогое! 24
Проверь плиз заголовок, что-то с ним не так)
Предлагаю допилить вот так: «[ruAgo] Дорабатываем output filter ":ago" на склонения по-русски»
Есть ряд вопросов перед стартом:
Планировщик встроенный, или интеграция с компонентом scheduler? Нужен cron или на хитах? Если второе (без cron-а), то настройки увеличения количества хитов в промежутках между запусками для сайтов с большой посещаемостью есть?))
А картинки-видео из TV нестандартных типов (image+ например) поддерживаются? А галереи на MIGX?
Можно привести текст из этого файла readme.txt здесь хотя бы?
Не всегда под рукой есть тестовый сайт ведь!
НО! Если у тебя и правда из двух установленных MODX в разных папках, у которых в core/config/config.inc.php указана одна и та же база с одинаковым значением $table_prefix — то я не знаю что тебе посоветовать, кроме как не пользоваться одной из папок, а настроить работу поддоменов через контексты, как указал выше.
Дело в том, что в MODX используется файловый кэш, в т.ч. системных настроек и т.п. В момент, когда ты очищаешь кэш, он удаляется и папки core/cache/* и как раз из-за этого могут быть проблемы. Наверное, если отключить вообще весь кэш, то всё будет работать, а почему бы и нет (в познавательных-то целях). Данные все в БД. Отключай короче все кэши, чтобы ничего не записывалось на диск, а всё было в Базе Данных… Но опять же, всякие фотографии, скрипты и стили для фронтенда, они же лежат на диске. При установке любого компонента, его файлы кладутся в папку с установленным MODX, а информация записывается в БД. Из другой папки будет видно инфу, а файлов нет — скорее всего будут ошибки.
Предполагаю, что комфортная работа не возможна в таких случаях. Но не уверен, возможно в кейсах, когда выносится core из корневой папки, можно использовать его в нескольких установках, но так я ни разу не делал, а в MODX3 такую возможность убрали, так что уже и не представится возможности.
Короче, используй 1 установленный движок, и контексты :)
У каждого контекста свои настройки, их можно использовать в шаблоне (те же контакты в шапке и т.п.).
Бонусом получишь обновление движка и пакетов на оба сайта, 1 раз вместо двух создашь любимые TV (обложка для страницы или галерея), 1 раз купишь платный компонент и так далее. На мой взгляд например, совсем не дичь, для этого (в числе прочего) контексты и придуманы в MODX!..
Создай второй контекст, создай плагин (в элементах в админке) назови например ContextSwitch и подключи его на OnHandleRequest вот код:
Далее в новом контексте укажи настройку (правый клик в админке → редактировать контекст) и добавь туда 2 системные настройки:
1. site_start (укажи id страницы в новом контексте, её нужно там создать и опубликовать) и это будет главная страница!
2. http_host (полный адрес url без https и слешей, например sub.example.com)
И всё должно заработать!
Обновляйте на крайнюю версию в пределах своей мажорной ветки (ну и с большой аккуратностью и обязательным бекапом — с 2.х на 3.х), несовместимость обработчика изображений с PHP7 исправили в MODX 2.8.7 и в 3.0.5!
Вот я форкнул один из пакетов, хочу подправить код и собрать новую версию для теста. Предполагается что я всё это заливаю в корень установленного MODX. Папка _build сразу содержит установочные скрипты, из-за чего я не могу использовать готовую установку MODX, где поддерживаю другие пакеты.
Вот этот путь /Extras/ModxExtraName/ откуда берется? Корень / перед /Extras/ где смонтирован? У меня это примерно так на хостинге /home/user/data/www/modx.test.ru/ и вот отсюда уже идут ...modx.test.ru/_build/ и так далее.
Давайте в билдерах в папку ./_build/ вкладывать ещё подпапку с названием пакета
Сейчас структура папок:
./_build/build.config.php
./_build/…
./core/components/ModxExtraName/…
./assets/components/ModxExtraName/…
Предлагаю делать так:
./_build/ModxExtraName/build.config.php
./_build/ModxExtraName/…
./core/components/ModxExtraName/…
./assets/components/ModxExtraName/…
Это позволит не вычищать каждый раз _build перезаливкой другого пакета. Ведь организовать подпапку — это логично и красиво.
И даже не обязательно использовать modx-build-environment-gui, он просто сканирует папку _build, парсит версии для сборки и даёт список ссылок (гордо именуемый тем самым GUI), чтобы поменьше клавиатуру пальцами полировать :) но сам ничего больше и не делает. Даже ссылку на скачивание собранного транспортника уже выдаёт билдер самого пакета, если поддерживает согласно инструкции…
В общем так или иначе, круто что наконец мы добрались улучшать Developer Expierence! Чем проще создавать и поддерживать компоненты, тем лучше для экосистемы, и для сайтов, которые на поддержке, и для наших нервов ;)
P.S. Может перенести в заметки и раскрыть тему, есть желающие? Ставьте лайк, если интересно :)
Ну это к слову… А теперь к твоей теме: я сам на windows работаю, и докер локально не использую, но изучаю тему и поюзываю на серверах (как минимум потому что иногда другого не предлагается...). И вот читаю конфиги твои и есть вопрос: а почему ты не монтируешь в локальную папку директорию _build? Тебе же не только правки в код вносить, но и собрать надо пакет, или другой у тебя workflow?
P.S. Он теперь в копилке репозиториев MODX RSC будет, или исходники останутся закрытыми?
Предлагаю, если нужно, захостить его там же, где статистика установки компонентов, в надёжной инфраструктуре одного из крупных ДЦ. Я поспособствую!
Или выпустить список в качестве отдельного пакета, который наследовать, чтобы обновлять средствами MODX.
С каждым годом всё больше и больше проблем от ботов. Ваши решения (Алексея и Андрея) очень помогают, и необходимость в них только растёт!
Меня вот этот вопрос заинтересовал:
А ведь использование сборщика разных пакетов не было бы такой проблемой, если бы когда-то давно этот момент предусмотрели создатели шаблонных пакетов…
Я уже давно придумал как это решить для себя, а недавно выпустил для всех! С помощью git submodule можешь подключить в любой пакет и пользоваться тоже → github/dimasites/modx-build-environment-gui welcome!
Выглядит «интерфейс» вот так:
(это ссылки на сборку каждого пакета, все на одном установленном MODX)
Концепция до безобразия простая — положить исходники в папку с названием дополнения =)
Один раз переносишь, и поддерживать становится проще!
То что ты руками указал, и сработало, это вроде как хорошо, но решить системно было бы ещё лучше!
В свежей версии MODX были правки в указанной части дефолтного конфига, и хотелось бы понять, есть ли недочёт в новой версии, или просто у тебя сайт со времён HTTP не был перенастроен на HTTPS и действуют какие то старые настройки. В любом случае я хотел бы подтвердить, что именно обновление приводит к смене протокола в url, а не что-то другое.
Я уже несколько десятков сайтов обновил и нигде такое не всплыло, вот в чем дело. Но ещё больше предстоит обновить и лучше бы я знал, если проблема и правда есть ;-)
Кстати, добавлю к списку вопросов выше ещё:
— не установлен ли у тебя тег в вёрстке? Если да, в каком значении?
Чтобы помочь тебе, дай больше инфы:
1. Проверь в системных настройках и в настройках контекста, может у тебя руками указано значение где-то?
2. По какому протоколу открываешь сайт, когда настройка выдаёт неверное значение? Например по https. А если по http открыть (без редиректа на https) — как себя поведет настройка?
3. Какой протокол указан в настройке [[++server_protocol]]?
Всё прошло хорошо, без сюрпризов и ошибок! Надеюсь, у всех так же ;-)
Для тех, кто захочет воспользоваться решением, рекомендую заменить JS-комментарии (/* такие */) на fenom-комментарии ( {*на такие*} ) чтобы на фронтенд не выводить их!