В MODX Revolution (MODX Revo) для передачи переменной в чанк через сниппет можно использовать несколько способов.
1. Использование атрибута &tpl
сниппета при вызове в коде:
[[snippetName? ¶m1=`значение1` ¶m2=`значение2` &tpl=`myChunk`]]
В данном случае myChunk
- это имя вашего чанка, в котором вы хотите использовать переменные param1
и param2
. В самом чанке вы можете получить доступ к переданным переменным следующим образом:
[[+param1]] [[+param2]]
2. Использование атрибута &tplChunk
сниппета при вызове:
[[snippetName? ¶m1=`значение1` ¶m2=`значение2` &tplChunk=`myChunk`]]
Таким образом, переменные param1
и param2
будут доступны внутри заданного чанка myChunk
по тем же именам:
[[+param1]] [[+param2]]
3. Использование модификатора @CHUNK
внутри самого чанка:
[[+myVariable:snippetName=`значение1,значение2`]]
В данном случае myVariable
- это имя переменной, которую вы хотите передать в сниппет, а snippetName
- имя сниппета. В самом сниппете вы можете получить доступ к переданным переменным следующим образом:
$param1 = $modx->getOption('param1', $scriptProperties, ''); $param2 = $modx->getOption('param2', $scriptProperties, '');
4. Использование глобальной переменной $modx->getChunk()
внутри самого сниппета:
$myChunk = $modx->getChunk('myChunk', ['param1' => 'значение1', 'param2' => 'значение2']);
В данном случае myChunk
- это имя вашего чанка. Внутри самого чанка вы можете использовать переданные переменные следующим образом:
[[+param1]] [[+param2]]
Это основные способы передачи переменных в чанк через сниппет в MODX Revo. Выберите наиболее удобный для вас способ, в зависимости от конкретной задачи и особенностей вашего проекта.