Simplemente desactive la ID de nodo con unset($node->nid)
, y node_save () creará un nuevo nodo.
El código ejecutado desde node_save()
es el siguiente:
// 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';
}
El último argumento de drupal_write_record () no se pasa; Esto significa que la función no actualizará una fila de base de datos existente.
Una vez que el objeto de nodo se ha guardado con node_save()
, $node->nid
contiene la ID de nodo para la fila de base de datos recién creada.