0

如何通过 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']是正确的;但节点中仍然没有出现任何术语。

4

2 回答 2

2

与其直接写入数据库,不如调用 taxonomy_node_save() 方法:http ://api.drupal.org/api/drupal/modules!taxonomy!taxonomy.module/function/taxonomy_node_save/6

通过这种方式,您可以确保不会遗漏该函数所做的任何其他步骤(即使小到最后的“刷新术语缓存”。:-)

让我知道这是否可行!

于 2012-06-21T18:15:31.820 回答
0

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

于 2012-09-19T17:00:27.083 回答