Как получить список опций у категории? Решено

Дополнение: minishop2

Добрый вечер.

Пишу импорт товаров, возникло пару затруднений.

Через API MODX:
1. Как получить список опций у категории?
2. Как задать опции категории?

В документации что-то не нашел ничего на эту тему.

Можно напрямую из базы брать конечно, но мне так не хочется делать.
23 августа 2016, 18:54    Андрей   
0    324 0

Комментарии (4)

  1. Александр 23 августа 2016, 19:03 # +2
    Смотрим схему miniShop2

    <object class="msCategory" extends="modResource">
    ...
    <composite alias="CategoryOptions" class="msCategoryOption" local="id" foreign="category_id" cardinality="many" owner="local"/>
    </object>
    

    Небольшой код:

    $cat = $modx->getObject('msCategory', $id);
    $opts = $cat->getMany('CategoryOptions');
    
    // далее работа со списком опций $opts для категории
    

    Создать связь — «категория — опция»:

    $cat = $modx->newObject('msCategoryOption', array('option_id' => 2, 'category_id' => 1, 'active' => 1));
    $cat->save();
    
    1. Андрей 23 августа 2016, 19:16 # +2
      Все получилось, спасибо!
    2. ck 28 февраля 2017, 22:32 # 0
      В продолжение темы, подскажите, как через API MODX получить возможные (заданные для выпадающего списка) значения определённой опции?
      1. Андрей 01 марта 2017, 09:08 # 0
        $option = $modx->getObject('msOption', [
          'id' => 42
        ]);
        
        print_r($option->toArray());
        
      Вы должны авторизоваться, чтобы оставлять комментарии.