Ich versuche, meine aktuelle HTML-Site in Drupal zu migrieren. Ich habe über 80.000 Seiten, die ich migrieren muss, also dachte ich, anstatt 50 Jahre lang vor einem Computer zu sitzen, würde ich ein Modul erstellen. Ich konnte ein Skript erstellen, das das HTML aus jedem Verzeichnis extrahiert, und jetzt kam ich zu einer Straßensperre, an der ich einen Knoten erstellen muss. Ich versuche, einen neuen Knoten mit zu erstellen node_save()
, aber wenn node_save ausgeführt wird, PDOException
wird bei allem, was ich versuche , eine Fehlermeldung angezeigt . Ich gehe vorbei $node
, das ist ein Array, das dann in ein Objekt umgewandelt wird.
PDOException: in field_sql_storage_field_storage_write () (Zeile 424 von /srv/www/htdocs/modules/field/modules/field_sql_storage/field_sql_storage.module).
So erstellen wir derzeit den Knoten, aber es entsteht ein Fehler:
$node= array(
'uid' => $user->uid,
'name' => $user->name,
'type' => 'page',
'language' => LANGUAGE_NONE,
'title' => $html['title'],
'status' => 1,
'promote' => 0,
'sticky' => 0,
'created' => (int)REQUEST_TIME,
'revision' => 0,
'comment' => '1',
'menu' => array(
'enabled' => 0,
'mlid' => 0,
'module' => 'menu',
'hidden' => 0,
'has_children' => 0,
'customized' => 0,
'options' => array(),
'expanded' => 0,
'parent_depth_limit' => 8,
'link_title' => '',
'description' => '',
'parent' => 'main-menu:0',
'weight' => '0',
'plid' => '0',
'menu_name' => 'main-menu',
),
'path' => array(
'alias' => '',
'pid' => null,
'source' => null,
'language' => LANGUAGE_NONE,
'pathauto' => 1,
),
'nid' => null,
'vid' => null,
'changed' => '',
'additional_settings__active_tab' => 'edit-menu',
'log' => '',
'date' => '',
'submit' => 'Save',
'preview' => 'Preview',
'private' => 0,
'op' => 'Save',
'body' => array(LANGUAGE_NONE => array(
array(
'value' => $html['html'],
'summary' => $link,
'format' => 'full_html',
),
)),
'validated' => true,
);
node_save((object)$node);
// Small hack to link revisions to our test user.
db_update('node_revision')
->fields(array('uid' => $node->uid))
->condition('vid', $node->vid)
->execute();