Ставим плагин на событие msOnCreateOrder
со следующим содержимым
<?php
switch ($modx->event->name) {
case 'msOnCreateOrder':
$prs = $msOrder->getMany('Products'); // так получаем объекты товаров в заказе
foreach ($prs as $pr) {
$product_id = $pr->get('product_id'); //определяем id ресурса в заказе
$product = $modx->getObject('msProduct', array('id' => $product_id));
// убираем товар из публикации
$product->set('published',0);
$product->save();
// чистим кэш
$cacheKey = $product->getCacheKey();
$modx->cacheManager->refresh(array(
'resource' => array('key' => $cacheKey)
));
}
break;
}