Apenas desative o ID do nó com unset($node->nid)
, e node_save () criará um novo nó.
O código executado a partir de node_save()
é o seguinte:
// Insert a new node.
$node->is_new = empty($node->nid);
// ...
if ($node->is_new) {
_node_save_revision($node, $user->uid);
drupal_write_record('node', $node);
db_query('UPDATE {node_revisions} SET nid = %d WHERE vid = %d', $node->nid, $node->vid);
$op = 'insert';
}
O último argumento de drupal_write_record () não é passado; isso significa que a função não atualizará uma linha de banco de dados existente.
Depois que o objeto do nó foi salvo node_save()
, ele $node->nid
contém o ID do nó da linha do banco de dados recém-criada.