Drupal 7 - Вставить таксономию в объект узла

У меня есть сценарий, который успешно создает новые узлы. Но у меня проблемы с установкой таксономии перед сохранением.

Я верю, что в Drupal 6 я бы использовал этот метод.

$cat1_tid = taxonomy_get_term_by_name($data[$i]['cat1']);
$cat2_tid = taxonomy_get_term_by_name($data[$i]['cat2']);
$cat3_tid = taxonomy_get_term_by_name($data[$i]['cat3']);
$node->taxonomy = array($cat1_tid, $cat2_tid, $cat3_tid);

] Я думаю, что в Drupal 7 я бы сделал это (мое имя поля - Каталог)

$node->taxonomy_catalog['und'][0] = array($term1Obj, $term2Obj);

taxonomy_get_term_by_name, похоже, не возвращает правильный объект для вставки в объект узла.

Если кто-то может пролить свет, я буду благодарен.

Спасибо

ИЗМЕНИТЬ

Решение:

// Taxonomy
$categories = array($data[$i]['cat1'], $data[$i]['cat2'], $data[$i]['cat3']);
foreach ($categories as $key => $category) {
  if ($term = taxonomy_get_term_by_name($category)) {
    $terms_array = array_keys($term);
    $node->taxonomy_catalog[LANGUAGE_NONE][$key]['tid'] = $terms_array['0'];
  }   
} 
5
задан Russell 13 February 2011 в 23:39
поделиться