Можно извлечь элементы поля из объекта с
// Find all terms on $node in field 'field_tags'.
$terms = field_get_items('node', $node, 'field_tags');
Но есть ли удобный способ сделать обратное, Core или как-то иначе?
// Attach new term $term to $node in field 'field_tags'.
$term = taxonomy_term_load($tid);
$node = field_set_items('node', $node, 'field_tags', 'taxonomy_term', $term);
node_save($node);
Я хотел бы избежать хлопот, связанных с ручным назначением $ term, посмотрите в devel, как выглядит структура массива, а затем создайте массив вручную, поскольку это иногда бывает нетривиально.
Единственная проблема в основной очереди, которую я мог найти, которая выглядела немного похожей, была о языке интерфейса API DX .