ループ内のチャンクを取得する必要があります...
//$chunkie = $modx->getObject('modChunk', array('name' => 'thumbTemplate'));
foreach ($items as $item) {
$itemArray = $item->toArray();
$itemArray['idx'] = $idx;
(...)
$output .= $modx->getChunk('thumbTemplate',$itemArray);
$idx++;
};
getObjectメソッドを使用してチャンクプレースホルダーも設定できるかどうかはわかりません。[実際、私はあなたができないと確信しています]
アップデート
これを試して:
<?php
$output = '';
$items = array(
'apples'=>'bananas',
'orange'=>'orange juice',
'peaches'=>'peach cobbler'
);
// use a query to retrieve your actual chunk from the db
$tpl = '[[+key]] = [[+value]] <br />';
foreach ($items as $key => $value) {
$itemArray = array(
'key'=>$key,
'value'=>$value
);
$chunkie = $modx->newObject('modChunk');
$chunkie->setContent($tpl);
$output .= $chunkie->process($itemArray);
};
return $output;
明らかに、私はいくつかの小さな変更を加えたので、切り取って貼り付けて動作を確認し、主要部分をコードに適合させるだけです。