А где у тебя инициализация контекста sd? В index.php или на уровне плагина какого-нибудь? Пришли мне доступ к админке на почту.

modx не дает создать два одинаковых alias С этим разобрался, надо в настройках отключить проверку дублирования во всех контентах. А с генерацией ссылок — засада. Была идея — передавать в процессор ключ приоритетного контекста и при формировании списка проверять, нет ли в том контексте такого документа… Но че-то мне кажется, слишком криво и неповоротливо это будет

modx не дает создать modx не дает создать два одинаковых alias

Привет, Коля! У меня так и сделано. я только процессорами и пользуюсь. Структура примерно такая: контекст web (хост site.ru) id=1 Главная (uri= / ) id=2 Каталог (uri= /catalog ) id=2 Контакты (uri= /contacts ) … контекст sd (хост sd.site.ru) id=47 Контакты (uri= /contacts1) — modx не дает создать При обращении по адресу sd.site.ru я переключаю контекст на 'sd', в котором нет странички с таким uri, генерируется onPageNotFound — и там я использовал твой код, как указал выше. MODX находит эту страничку, выводит ее. но при генерации меню контекст используется web (только в нем есть все документы), и getmenu собирает ссылки из этого контекста. Вот я и ломаю голову — как что где допилить :)

Например, в меню ссылка на контакты ВСЕГДА указывает на контакты из контекста web. Это особенность метода $modx->makeUr(). Попробуй в консоли не в контексте web выполнить print $modx->makeUrl($id), где $id — id документа из контекста web и не равен 1. Получишь что-то типа такого: [2015-08-26 19:31:30] (WARN @ /manager/components/console/connectors/console.php) 5 was requested but no alias was located. http://*********/news/ Это же будет в случае вывода тегов [[~id]], использования сниппета Wayfinder и т.п. По этой причине я в таких случаях использовал menu-процессор и выводил $object->uri.

Добрый день. Напишите в скайп — colorwebdesigner. Делали недавно аналогичный проект.

Просто удалите папку core/model/modx/processors/ и тогда уже залейте поверх MODX нужной версии и выполните обновление. Просто там могли быть заменены какие-то non-classed-процессоры на классовые, которые вызываются вперед, даже если будут присутствовать старые процессоры.

3.Описание индексов новых полей в (modx->map) не помещаю, т.к. индексы xpdo нужны только для генерации таблиц в БД (или нужны для чего-то ещё ?) Нужны только для генерации. Но если вдруг будете потом на основе мапы таблицу создавать, то конечно же они понадобятся.

where => array( "parent:in" => array(1,4,9,45.....), )

:( так, что не бывает выборки одновременной из указанных категорий, только один category_id можно указать?