Сниппет msGetOrder в связке с msCart и msOder вызывается 3 раза. В самом конце сниппета msGetOrder в ветке «else {» дописываю свой код, но срабатывает это всё 3 раза. Вот последние строчки сниппета:
if (!empty($toPlaceholder)) {
$modx->setPlaceholder($toPlaceholder, $output);
} else {
$addr = $order->getOne('Address')->toArray();

$phone = $addr['phone'];
$address = "$addr[country], $addr[region], $addr[city], $addr[street], $addr[building], $addr[room]";

$modx->runSnippet('CRMka', array('products' => $products, 'phone' => $phone, 'address' => $address));
return $output;
}