Implements hook_field_presave().
Create any new terms defined in a freetagging vocabulary.
function taxonomy_field_presave($entity_type, $entity, $field, $instance, $langcode, &$items) {
foreach ($items as $delta => $item) {
if ($item['tid'] == 'autocreate') {
unset($item['tid']);
$term = entity_create('taxonomy_term', $item);
$term->langcode = $langcode;
taxonomy_term_save($term);
$items[$delta]['tid'] = $term->tid;
}
}
}