8 часов назад
Далее код оставил без изменений
<script type="text/javascript">
// <![CDATA[
{literal}
Ext.onReady(f...
Помогите добить VideoGallery 2
8 часов назад
По этому вопросу тоже думаю — создал вопрос тут
Вопрос по будущему MODX и стратегии развития. 2
Вчера в 20:13
Не нужно меня поддерживать в данном конкретном случае. Прошу убрать лишнее
Опыт по переносу MODX2 на MODX3 и Minishop3 2
Вчера в 19:28
В общем убил целый день, но… так у меня ничего и не вышло.
не могу зарегистрировать класс.
содержание самого файла my_msorderhandler.class.php:
...
Кастомизация minishop'a 9
Вчера в 16:01
Компонент очень нужный и мне кажется будет востребован.
У меня тут задача стоит сделать что-то подобное на сайте на движке на MODX 2.8 — там есть ста...
ms3Variants - Реализация вариантов одного товара в MiniShop3 4
Вчера в 14:42
тут пришла мысль что никто не захочет просто так делиться своим опытом за бесплатно. Можно было бы сделать статьи и кейсы платными? Типа хочешь прочит...
Предложение по развитию сообщества: Создание каталога портфолио/реализованных кейсов на MODX с демо ... 1
Вчера в 10:08
Добрый день! Я этот компонент давно делал, и еще лет 5 не возвращался к нему… он работоспособен, все в этом плане нормально (ну по крайней мере с php ...
msProductKits - удобное управление товарами-комплектами (наборами товаров) 29
19 февраля 2026, 10:22
Вижу, спасибо.
Ошибочно решил, что если есть в документации minishop2, то в старых версиях есть и сам код не посмотрел.
Предыдущий идентификатор статуса при событии 'msOnChangeOrderStatus' 4
19 февраля 2026, 09:27
Привет, Алексей.
1. Как определяем ботов
Проверка идёт по User-Agent в ms3rv_is_bot() (helpers.php). Используется regex по типичным маркерам краул...
ms3RecentlyViewed - Недавно просмотренные товары для MiniShop3 2
Просто сделайте ресурс в корне дерева с типом содержимого javascript и отключенным текстовым редактором. Присвойте дайте псевдоним (к примеру, «slider»), заморозьте на всякий случай у него URI и подключайте как обычно в HEAD:
Ну а внутри него можете как угодно, и что угодно вызывать. И TV и плейсхолдеры и сниппеты и любые теги MODX.
Добавьте нужные расширения.
Отписал в почту.
Если да, то делаете сниппет «getServices»:
А на странице организации вызываете:
Но я бы вообще по-другому сделал.
В TV tv-code-list у организаций просто бы перечислял ID тех услуг, которые нужны. То есть не 100,101, а 2,3.
Тогда вообще ничего мудрить не придется — просто вызываете любой сниппет, который поддерживает параметр &resources и скармливаете ему этот TV:
и т. д.
100 тут — ID док-та «Услуги».
И, естественно, нужен pdoTools.
Ну и вызываете:
Вот у Вас и получается в коде два вызова Shopkeeper — CSS-то влияет на визуальную составляющую, а физически из кода ничего не убирает.
Вам же нужно именно физически оставлять в коде страницы только один чанк с одним вызовом Shopkeeper. Это можно сделать с помощью вышеуказанного расширения.
Просто пишете в шаблоне страницы:
Куда уж проще ))
Нужен либо сниппет, либо вышеописанное решение, что по сути, тот же сниппет.
Тогда сможете просто обрамлять в разные теги разные корзины:
Ну и проверяем его на четность.
Но лучше &tplLast используйте. Оно проще будет.
И, кстати, если будет один результат, то все получится и без &tplLast, поскольку он ни под &tpl_n2 ни под &tpl_n3 не попадает.
Опять же, &tplLast никто не отменял ))
Тут указывается имя чанка для каждого N-го ресурса, например, &tpl_n4=`tplEvery4th` будет применено к каждому 4-му ресурсу (отсюда).
Ваш_домен/manager/?a=security/forms
Тут полный список: docs.modx.pro/system/the-basics/filters-input-and-output#Модификатор-UserInfo
У меня запятая стоит прямо в шаблоне после [[+id]]: Но можно и в параметрах вывода.
1. Сделать у целевой страницы TV, где указывать через запятую просто ID нужных страниц. Ну а дальше просто через &resources их и выводить.
Для удобства TV можно сделать типа «Множественный выбор» с возможными значениями, задаваемыми, к примеру, через EVAL:
2. У выводимых страниц сделать TV c указанием на каких целевых их выводить. В этом случае через EVAL будет то же самое, только шаблон другой:
Тогда, как я и написал в предыдущем комменте, нужно на целевой странице вызывать их через:
Ну и тему сделайте какую-нибудь типа:
2. На вкладке MIGX (вторая) жмете «Добавить элемент».
3. Указываете в поле Name любое название конфигурации. Например, icons.
4. На вкладке Formtabs (тут настраиваются поля окна редактора) жмете «Добавить элемент».
— Снова жмете «Добавить элемент», и вбиваете: Fieldname — icon, Caption — Иконка, InputTVType — image.
На вкладке Mediasources также — «Добавить элемент» и ставите контекст и ID того источника файлов, который нужен. Сохраняете.
— Снова жмете «Добавить элемент», и вбиваете: Fieldname — text, Caption — Название. Сохраняете.
5. Жмете 2 раза «Выполнено». Это получилось окно добавления элементов.
6. Теперь настраиваете вывод в админке. На вкладке «Columns» также добавляете элементы icon и text. В первом случае Header — Иконка, Field — icon, Renderer — this.render.Image. Во втором: Header — Название, Field — text и можете поставить Cell Editor this.text.editor, чтобы можно было прямо в таблице редактировать название, не открывая окна редактора.
7. Все сохраняете, нажав «Выполнено».
8. А теперь просто у TV «comfortably-n-why» ставите в поле «Конфигурации» — icons и все. Никаких JSON во «Вкладках формы» и «Разметке колонок» не нужно.