47 минут назад
Начиная с версии 3.0.0-beta пакет доступен под MODX3
Минимальные требования:
MODX 3.2.* PHP 8.4
Cabinet 20
2 часа назад
Нет. Сейчас категории и товары создаются напрямую через xPDO-модели:
— категории: newObject(msCategory::class) → save();
— товары: newObject(msPro...
CommerceBridge 1C — двусторонняя интеграция 1С с MODX 3 и miniShop3 по CommerceML 2. 2
20 июня 2026, 17:54
Только что столкнулся с таким на modx3, ранее 1 раз видел на modx 2.8 — не было времени и мотивации разбираться.
Но проблема есть и она старая.
Кл...
Не срабатывают статичные плагины 1
20 июня 2026, 13:08
С обновлением проблема ушла — отлично
Хватит логгировать как в каменном веке 🪵 3
19 июня 2026, 23:14
Обновление компонента
История изменений MaxNotify 3
1.2.0-pl
добавлен канал max в Центр уведомлений miniShop3;добавлена отправка из Центра дл...
MaxNotify3 3
19 июня 2026, 21:05
Копать надо в браузере. На вкладке сеть, если ответ 500, тогда в логи сервера.
Зависает корзина минишоп2 1
16 июня 2026, 15:00
Последний FormIt + последний FetchIt = белый экран
Последний pdoTools + последний MODx v3 = белый экран
FormIt 5.2: нативный AJAX и reCAPTCHA v3 5
15 июня 2026, 19:12
Благодарю) сижу ломаю голову, все сайты положил
Не получается установить PdoTools 6
Всего 125 972 комментария
Смысл в том, что после разбора внутреннего тега [[+id]] получается новый тег, например [[~9]], а он уже превращается в ссылку на документ с id = 9.
То есть, нужно парсить этот тег минимум 2 раза — это и есть рекурсия. Так весь MODX и работает, это его чуть ли не основная фишка.
Сниппет sendOrderToTelegram
Как получить токен и идентификатор чата написано в интернете.
{set $filters = '!SelectFilters' | snippet: [
'default' => [
'ms|vendor:vendors', 'resource|parent:parents'
]
]}
{$_modx->runSnippet('!mFilter2', [
'element' => 'msProducts',
'class' => 'msProduct',
'showEmptyFilters' => 1,
'limit' => 12,
'tplOuter' => 'mFilter2OuterTpl',
'tpls' => 'listProductTpl,gridProductTpl',
'includeTVs' => 'available',
'includeThumbs' => 'medium',
'tplPageWrapper' => '@INLINE
{$prev}{$pages}{$next}
','tplPageActive' => '@INLINE {$pageNo}',
'tplPage' => '@INLINE {$pageNo}',
'tplPagePrev' => '@INLINE «',
'tplPageNext' => '@INLINE »',
'tplPagePrevEmpty' => '@INLINE «',
'tplPageNextEmpty' => '@INLINE »',
'filters' => $filters,
'aliases' => 'ms|vendor==vendor,
msoption|marka==marka,
msoption|model==model',
'ajaxMode' => 'button',
'filterOptions' => '{
«more_tpl»: "<button class=\«btn btn-blue btn-rounded btn_more\»>Загрузить еще"
}',
'tplFilter.outer.default' => 'filterSelectOuter',
'tplFilter.row.default' => 'filterSelectRow',
'tplFilter.outer.vendor' => 'filterCheckboxOuter',
'tplFilter.row.vendor' => 'filterCheckboxRow',
'tplFilter.outer.marka' => 'filterSelectOuter',
'tplFilter.row.marka' => 'filterSelectRow',
'tplFilter.outer.model' => 'filterSelectOuter',
'tplFilter.row.model' => 'filterSelectRow',
'tplFilter.outer.resource|parent:parents' => 'filterSelectOuter',
'tplFilter.row.resource|parent:parents' => 'filterSelectRow',
])}
получилось вот так, не через хук, но работает.
Ну а замена простых плейхолдеров… Самый главный архитектор системы об этом давно знает и ничего менять не хочет.
Хочешь исправить — ставь pdoTools и пользуйся, для того расширения и нужны.
Сейчас речь об UpdateProfile из пакета Login.
Данные нужны текущего пользователя.
Речь идет о синхронизации информации из профиля с ресурсом, в некоторой части совпадающей с профилем, когда этот профиль меняется.
А недопонимание объясняется легко. К сожалению, у нас с Василием давно уже нет взаимопонимания. И уважительного отношения на личностном уровне. Но я от этого не страдаю. Уверен, и он тоже. И в дальнейшем я не планирую повышать нулевой уровень нашего общения.
А бывают сайты без pdoTools? Лендинги наверно? Но про них говорить смысла нет. Просто я в статье закрепил то, о чем много раз говорил и в чатах и комментариях в ответ на вопросы типа насколько быстрее будет работать сайт, если в карточке товара заменить синтаксис MODX на Fenom. В одном из своих последних комментариев тут я как раз и писал, что главная причина ускорения сайта — это pdoTools.
Многие разработчики сами замечают, что после замены ничего не изменилось по скорости. Как и на не заметил прироста на своём сайте. В этой статье я объяснил почему. Да и сам Василий в своём сегодняшнем посте тоже. Цифры для pdoParser до 100 чанков. Большинство сайтов (может даже 90%) использует пагинацию и даже 100 чанков парсить в цикле не будет. Не у всех на каждой странице сайта 890 комментариев.