J'ai besoin de tirer le nid immédiatement après sa création en utilisant entity_metadata_wrapper comme méthode de création.
Voici un bref exemple:
$values = array(
'type' => 'content_type',
'uid' => $user->uid,
'status' => 1,
'comment' => 1,
'promote' => 0,
);
$entity = entity_create('node', $values);
$wrapper = entity_metadata_wrapper('node', $entity);
$wrapper->title->set('title');
$wrapper->save(true);
entity_save('node', $entity);
// From this, where can I get a NID value for the node that was just created?
Vous pouvez simplement utiliser la méthode intégrée de entity_metadata_wrapper pour obtenir l'ID:
$wrapper->getIdentifier()
Facile.
$wrapper->save();
$node = $wrapper->value();
dsm($node); // which has $node->nid;
Je pensais que je répondrais à quelqu'un d'autre.
Mise à jour:
La réponse ci-dessus est une meilleure réponse $wrapper->getIdentifier()
.
Il existe des situations où l'entité peut avoir une sorte d'identifiant unique.