Синтаксис
@EVAL php_code
Выполняет строку php-кода и обрабатывает возвращаемое значение.
Где php_code - это фактический PHP-код, который должен быть выполнен. Возвращаемое значение может быть строкой, массивом или набором записей. Используя команду @EVAL, вы можете писать php-коды, чтобы сделать почти все, что возможно, с помощью php-скриптов сегодня.
Это самая гибкая и мощная из всех команд, поскольку она открывает привязки к практически неограниченным возможностям.
@EVAL return «Время:» . time ();
Необходимо сделать в ТВ возможность выбирать ресурс из дерева документов (документ с номером 3).
Вызов сниппета
@EVAL return $modx->runSnippet('DocLister', array( 'parents' => 3, 'tpl'=>'@CODE: [+pagetitle+]==[+id+]||') );
Как вы можете убедиться из примера выше, допускается вкладывать одну @-связь в другую.
Например, привязка @EVAL может быть размещена внутри ТВ, а в ней использована привязка @CODE для шаблона строки. Это избавляет вас от необходимости делать лишние чанки, зачастую содержащие одну-две строчки.