通过SQL(term_node)直接向节点添加分类术语

时间:2012-06-21 16:31:12

标签: drupal drupal-6 drupal-taxonomy drupal-nodes

如何通过SQL将分类术语直接添加到节点?

我用过:

db_query("INSERT INTO {term_node} (nid, vid, tid) VALUES ( " . $row['nid'] . "," . $the_term->vid . "," . $row['next_tid'] . ")" );

$row['nid']$the_term->vid$row['next_tid']是正确的;但节点中仍然没有出现任何术语。

2 个答案:

答案 0 :(得分:2)

为什么不调用taxonomy_node_save()方法而不是直接写入db:http://api.drupal.org/api/drupal/modules!taxonomy!taxonomy.module/function/taxonomy_node_save/6

通过这种方式,您可以确保您不会错过任何其他功能的步骤(即使最后只是“刷新术语缓存”。: - )

让我知道这是否成功!

答案 1 :(得分:0)

你们是在谈论Drupal 7吗?在这种情况下,您应该考虑至少两个表。 Drupal 7中的CCK为每个字段创建两个表:field_data_field_<fieldname>e field_revision_field_<fieldname>