
Роман Воропаев (Volk)
С нами с 03 декабря 2015; Место в рейтинге пользователей: #121- Заметки 256
- Комментарии 64
8 часов назад
Если еще кому нужно:
&ajaxMode=`button`
&filterOptions=`{
"more":".btn--more",
"more_tpl": &q...
Как изменить кнопку "Загрузить ещё" в mFilter2 ? 2
Вчера в 21:48
Я опечатался, в assets, только tpl, а core закрыта htaccess (IfModule mod_authz_core.c)
DateAgo 7
09 мая 2025, 20:12
Есть ещё такой кейс
Office - авторизация и регистрация через sms c одной формы 11
08 мая 2025, 16:36
Добрый день.
Подскажите пожалуйста, а как можно установить или приобрести компонент ExportUsers? Просто на сайте modstore.pro нет такого компонента ...
minishop2. Экспорт покупателей (не пользователей) 5
07 мая 2025, 14:38
Столкнулся с такой же проблемой вдруг, хотя сделал уже не один сайт и никогда такого не было. Оказалось все просто, если на странице подключаются скри...
Minishop2 - дублируются заказы 6
06 мая 2025, 20:21
решил таким способом получение первой картинки
{set $preview = $_modx->runSnippet('ms2Gallery', [
'resources' => $id,
'...
msProducts - не подключается превьюшка 17
05 мая 2025, 21:56
Нашёл!
options-
options-s-model
метод перебора сработал.
MODX 2.8.8 minishop2 4.4.0-pl
Утилита импорта minishop2. Как импортировать опции? 4
думаю должно сработать.
прикручивания костылейсоздания нового модификатора. сам вид размеров у меня 450*1800*115 или 450x1800x115.в итоге чанк вызова опций tpl.msOptions:
модификатор sort:
Суть его в том, чтобы кеш-префикс поменять для https-запросов.
Важно: на разных хостингах вместо $_SERVER['SERVER_PORT'] может быть другой параметр, надо смотреть индивидуально
Тогда сайт не будет потерян поисковиком и не вызовет выпода из индекса.
В robots.txt еще надо прописать жестко Host: site_domain.
После этого месяца через три (когда поисковики полностью перестроят индексы), можно уже будет настроить и редирект.
Ладно, это лирика. Я так понял, подмену в контроллере ты делаешь для того, чтобы можно было дерево документов справа выводить через кастомный JS-layout?
ОК, тогда такое решение, для примера:
Замена через регулярки, конечно, жестко, но в твоем случае это меньший хардкод, чем было. И в таком случае дерево справа выводится, и modxSDK работает.
А теперь интересное: я так понял, при включенной JS-компрессии в админке у тебя эта штука не работает? Ведь ты вклиниваешься только в блоке отключенной компрессии. Поэтому я и добавил проверку включена ли компрессия. Включаем компрессию, и уже кастомный JS отсутствует, и функционал не работает.
Не работает и без моих модификаций (без них только еще и modxSDK работать перестает).
Правда тут сложнее становится? Надо в компрессированный JS-файл вклиниться, а это уже гораздо сложнее и простой регулярочкой сложно, а главное — глупо. Поэтому ищем более правильное решение, а именно расширение самого MODx.Layout. Вот тебе такой расширяющий Layout.
Согласись, 90 строк лучше 420-ти?
А в классе твоем итоговый код будет таким:
И здесь сразу несколько плюсов:
1. Это работает теперь в том числе и на включенной компрессии.
2. Это не перетирает чужие кастомные скрипты.
3. Это не ломает чужие лейауты (сейчас, если кто-то переопределит на свой лад modx-layout, свой код его затрет).
4. Гораздо меньше кода (что обслуживать легче).
5. БОльшая обратная совместимость (не придется отслеживать версию MODX-а в случае, если в новой версии MODX-а будут изменения на уровне твоего текущего переопределенного блока контроллера).
В общем, если ты хочешь писать правильные компоненты, во-первых, меньше огрызайся и больше слушай других, а во-вторых, научись хотеть писать правильный код. У тебя есть мышление, но нет правильного взгляда на такие вещи.
P.S. А еще лучше пуллреквест бы в MODX отправил. Там вопрос в двух строчках.
Если мы формируем заказ будучи не авторизованными, а потом авторизовываемся на странице оформления заказа, то корзина заменяется и мы теряем товары, которые только что сложили.
Для исправления необходимо чуть поправить событие OnWebLogin
Раньше я так постоянно чистил систему от старых ненужных версий…
Как пример https://premier-tur.com/sanitariums/abzakovo — страница объекта с несколькими каруселями и формой в произвольных местах. В итоге MODX теги обрабатываются не везде, а только там, где это нужно.