Если эти поддомены разбросаны по разным контекстам, то будет проще сделать. Добавить в таблицу заказов колонку Контекст и в процессоре получения заказов добавить в условие списка контекстов. Что-то типа такого: if(!$this->modx->hasPermission('shop.view_all_orders')){ $ctxs = array(); foreach($modx->getCollection('modContext') as $context){ if($context->checkPolicy('shop.view_orders')){ $ctxs[] = $context->id; } }

if($ctxs){
    $c->where(array(
        'context_key:in' => $ctxs[],
    ));
}
else{
    $c->where(array(
        '1=2',
    ));
}

}