créer un noeud en codant

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,je suis en train de créer un module qui me permet de créer un nœud et de remplir les valeurs des champs en reprenant les paramètres que je passes. J'ai deux cas de figure soit le champs n'a qu'un seul paramètre et cela ne me pose pas de problème je passe en argument l'id de la valeur à rentrer. Par contre lorsque le champs peut contenir plusieurs valeurs j'ai un problème.
j'utilise le code suivant que j'ai repris depuis le site officiel

global $user;

// Les valeurs de base d'une entité (type de contenu : seance, etc.)
$values = array(
'type' => 'seance_realisee',
'uid' => $user->uid,
'status' => 1,
'comment' => 0,
'promote' => 0,
);

// Création du node avec les options

$entity = entity_create('node', $values);

// Récupération des paramètres passé en argument
$ewrapper = entity_metadata_wrapper('node', $entity);

$ewrapper->title->set('Seance');

// Ajout des attributs de la séance
//attribut avec une seul valeur et ça ne pose pas de problème
$ewrapper->field_entity_genre->set(intval($genre_id));
//attribut avec une seul valeur et ça ne pose pas de problème
$ewrapper->field_entity_objectif->set(intval($objectif_id));
//c'est un champs qui peut prendre plusieurs valeur et c'est la que j'ai un problème j'ai essayé de passer soit juste l'id soit de passer directement les valeurs
$ewrapper->field_entity_muscle->set(intval($muscle_id));

$ewrapper->field_entity_difficulte->set(intval($difficulte_id));

$ewrapper->field_entity_materiel->set(intval($materiel_id));

// Sauvegarde du noeud
$ewrapper->save();

return $ewrapper->nid->value();

Forum :