Ceci est ma deuxième question sur mes problèmes avec la création d'un script de migration personnalisé.
Je ne crée que de nouveaux nœuds et ne me soucie pas des mises à jour.
Code:
$node = new stdClass();
$node->type = 'migrate';
$node->title = $content['title'];
$node->language = LANGUAGE_NONE;
$node->created = (int) date('U',strtotime($content['created']));
$modified = $content['modified'];
if (! empty($modified) && $modified != '0000-00-00 00:00:00') {
$modified = (int) date('U',strtotime($modified));
} else {
$modified = 0;
}
$node->changed = $modified;
node_object_prepare($node);
#some lines later
node_save($node);
Par exemple, mon $ modified est défini sur 0 et après l'enregistrement, je vois la colonne mise à jour de cette ligne de nœud dans la liste de contenu d'administration avec la valeur datetime actuelle.
db_query('UPDATE {node} SET created=:created, changed=:changed WHERE nid=:nid', array(':created'=>$whatever,':changed'=>$whatever,':nid'=>$node->nid));
avoir enregistré.