Назначить товару дополнительную категорию

Всем привет.
Подскажите, как через API назначить товару дополнительную категорию?

Объект создаю так:
$resourse = $modx->newObject(«msProduct»);
$resourse->set('id', $row['id']);

$resourse->set('parent', $row['catalog_id']);
$resourse->save();
Слава
27 июня 2015, 09:14
modx.pro
3
2 251
0

Комментарии: 4

Володя
27 июня 2015, 15:00
1
+3
Это вы просто родителя ресурсу задали.
Дополнительную категорию вот так
$pid = $resourse->get('id'); // id товара
$cid = 55; // id категории
$res = $modx->getObject('msCategoryMember', array('category_id' => $cid, 'product_id' => $pid));
if (!$res) {
	$res = $modx->newObject('msCategoryMember');
	$res->set('product_id', $pid);
	$res->set('category_id', $cid);
	$res->save();
}
    Слава
    27 июня 2015, 21:01
    0
    Большое спасибо, это то что нужно!!!

    А еще не подскажите, как мне удалить все связи товара с категориями?
      Володя
      29 июня 2015, 19:27
      0
      $modx->exec("DELETE FROM {$this->modx->getTableName('msCategoryMember')} WHERE `product_id` = {$pid} AND `category_id` = {$cid};");
    Володя
    29 июня 2015, 19:27
    0
    и самое интересное что все это есть тут — github.com/bezumkin/miniShop2/blob/master/core/components/minishop2/processors/mgr/product/category.class.php
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      4