如何使用VBO加Term Fields模块实现批量修改Term的自定义字段值

VBO可以修改CCK的字段值,但是Drupal6里面Term没有很好的CCK支持,我们只能用term fields来扩展term的自定义字段,要想批量修改Term的自定义字段的值,只能手写PHP脚本。

首先创建一个VBO,可以根据指定的条件筛选要变更的Term的列表,然后
执行Execute Arbitary PHP Script执行下面的语句,将VBO传过来的Object的内容打印出来

watchdog("radio", print_r($object,TRUE));

stdClass Object ( [tid] => 330 [vid] => 4 [name] => Zhejiang [description] => Zhejiang [weight] => 0 [language] => [trid] => 0 )

通过打印内容,我们可以知道$object->tid, $object->vid信息,

然后我们就可以用VBO执行
db_query("INSERT INTO {term_fields_term}
(tid, vid, term_country_value)
VALUES (%d, %d, 'CN')",
$object->tid, $object->vid);

来批量修改Term的字段值