Іван Клімчук

Іван Клімчук

Был в сети 13 мая 2025, 17:35
Заказы не принимаю
Ну странно вы реагируете на ответы. Вам предложили решение, которое один в один решает проблему, да, платное. Но проблему решает. А вы в ответ начали, что клиенты не одобряют, нужно тоже самое, но бесплатно, и ушли в рассуждения о том, что в Gallery вот примерно так, но чуть-чуть по другому и простыни кода. Я не минусовал, но я честно не понял вашего ответа.
На эти страницы у вас настроены 301 редиректы, заголовок отдает X-Powered-By:PleskLin X-Powered-By:PHP/5.6.14

Если у вас панель Pkesk стоит, то возможно там что-то настроено. Но это скорее всего не MODX, а что-то выше уровнем. MODX такие заголовки не шлет.
Там в самом низу есть пример с Rowboat (но можно использвать и pdoResources, только указать правильный класс в параметрах, в документации есть). Через этот плагин ваши названия метро записываются через этот пагин, в tv вызываются (select) как в примерах. Следовательно затем их легко можно выбрать из таблицы этих значений, условия where правильно только написать. Если не хотите разбираться с этим компонентом, то можно написать свой сниппет, который из таблицы с TV возьмет поле, где указан ваш запрос с Метро1==1||Метро2==2 и распарсить его и выдать название по совпадению с цифрой, которая хранится в ресурсе.
Кстати, очень забавно, но многие сайты/блоги нахваливающие MODX сами сделаны на WordPress — личное наблюдение.

В этом ничего постыдного нет, так как сайты, где нахваливают, это скорее блоги, а WP изначально таки был блоговый движок. Так что тут все нормально, под каждую задачу нужен свой правильный инструмент. Делать блог на MODX сложнее и дольше, нежели на WP, согласитесь.

Что касается других аспектов, то действительно, в MODX больше свободы относительного внешнего вида сайта. Нету четкой системы шаблонов, нет ограничителей как в WP (рамки в любом случае есть, но они все же шире).
Порог вхождения тоже довольно низкий (если работать как с CMS), но в определенный момент появляется разрыв, когда нужно сделать что-то сложнее сайта-визитки и требуются дополнительные знания в PHP. Те, кто этот порог преодолевают, становятся довольно успешными MODX разработчиками, а вот те, кто пока не смог, пополняют коллекцию раздела Вопросы на этом ресурсе. Это тоже неплохо, так как люди учатся.

Что касается литературы, то на русском я пару книг встречал, но скажу, что уровень примерно как в вашем случае с WP. Авторы решили, что все знают и решили продавать свои псевдознания. На этом сайте очень много заметок и статей по различным аспектам работы с MODX, есть раздел Вопросы, где можно найти ответы на часто возникающие вопросы (скорее всего до вас уже кто-то подобное спрашивал, и ему ответили). Еще могу порекомендовать сайт Николая —
modxclub.ru/. Подход Николая к разработке на MODX иногда может показаться непривычным, но у него много инетерсных статей по глубокому изучению внутренностей MODX.

На английском языке есть книга modx.com/learn/modx-the-official-guide

Ну и я делаю сервис с видео-уроками (ссылку давать не буду, а то и так что-то наспамил в комментариях к другим постам в последнее время).
По теме документации, надо сказать, англоязычные ребята, хоть и не шибко сильно стремятся переводить ее на английский, но когда их припекает, таки присылают переводы. И им нужно еще понять, что было написано то на самом деле (google translate иногда хуже пьяного китайца), а вот носителям могучего и великого — черкануть пару строк раз плюнуть. Поддержу Василия. Хватит ныть.
Дизайн дело такое, хорошо когда его нет. Вернее когда он не чувствует, а просто удобен. Но к советам прислушался, спасибо.

Про лофтблог знаю, еще есть ларакаст и друпализми (ценник адовый у них) и другие проекты, которые делают именно короткие ролики по существу. Уроков хватает в сети, но смотреть, как некий условный Петя полтора часа дрочит блог на MODX, у меня вызывает отвращение :)
Раз вы уже начали писать свой сниппет, значит будет немного проще. Я понимаю, что вы думаете, что делаете все правильно, но на деле не понимаете один ньюанс. Дело в том, что если значение TV не задано (т.е. пусто по вашему), то этого значения вовсе нет. Т.е. его вовсе не существует в таблице значений tv (там где хранятся modTemplateVarResource). Следовательно проверить на пустоту пустоту нельзя. Только на null (что у вас в итоге и работает).

Если я правильно понял, то в вашем случае должна помочь инверсия. Нужно сначала найти те значения TV, которые уже установлены (существуют в таблице), получить из них значения contentid и полученный массив id ресурсов передать в условие выборки ресурсов NOT IN (resourceid1,resourceid2,...).
Формально да, но я бы так не стал делать. Gigify нужен скорее для синхронизации N установок MODX. Например, есть девелоперская версия и есть продакшен версия. Вот им можно отдельные объекты синхронизировать. Что касается задачи настроить права и тд и тп, то я бы рекомендовал это делать через создание пакета для MODX (по сути как обычное дополнение), в котором прописывать все эти правила. Я так делаю, создаю такой пакет с именем theme-sitename. В нем у меня прописаны все переопределения системных настроек, дополнительные файлы, тема сайта (css, js, шрифты и тд).