To jest moje drugie pytanie dotyczące problemów z tworzeniem niestandardowego skryptu migracji.
Tworzę tylko nowe węzły i nie dbam o aktualizacje.
Kod:
$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);
Np. Mój $ zmodyfikowany jest ustawiony na 0 i po zapisaniu widzę zaktualizowaną kolumnę tego wiersza węzła na liście treści administratora z bieżącą wartością daty / godziny.
db_query('UPDATE {node} SET created=:created, changed=:changed WHERE nid=:nid', array(':created'=>$whatever,':changed'=>$whatever,':nid'=>$node->nid));
po zapisaniu.