Так надо-то наоборот. Сначала $modx->smarty должен появиться (это основной модуль), и только потом уже свое что-то вытворяешь.

Нашел в «Системных событиях», у Modxsmarty установил в 1, у своего плагина, 0. Получаю: Fatal error: Call to a member function assign() on a non-object in /home/u358292/to-l.ru/www/core/cache/includes/elements/modplugin/8.include.cache.php on line 13 Catchable fatal error: Argument 1 passed to xPDOObject::load() must be an instance of xPDO, instance of modX given in /home/u358292/to-l.ru/www/core/xpdo/om/xpdoobject.class.php on line 404

это я вытащил свой аватар с твоего сайта, чтобы для примера не было моего сайта в ссылке. но смысл и расшифровка, думаю, понятны. И гибкость, на мой взгляд, приобретается просто невероятная.

НЕ сделал, я не нашел, где это делается.

Но ты ему в итоге изменил ранг? Сделал, чтобы он после основного модуля вызывался?

Важно создать плагин на событие OnHandlerRequest, но с рангом очередности выше плагина modxSmarty. Это чтобы в Smarty-шаблонах переменная $template_url формировала путь к папке публичной части шаблона. У меня тут траблы, выдает ошибку. Я создал плагин, обозвал его, как попало, установил галкой OnHandlerRequest в параметрах и нарвался на мат со стороны движка. Спасибо.

поэтому я пишу тебе, а не им