節點屬性數據的主要表格是node
和node_revision
,查看這些列中的列,它應該是非常明顯的,需要在這些列中進行。
就領域而言,他們的存儲是可預測的,所以你可以自動導入(儘管我不羨慕你必須寫這個!)。如果你的字段被稱爲'field_anime',它的數據將存在兩個表中:field_data_field_anime
和field_revision_field_anime
,它們由實體ID(在這種情況下是節點ID),實體類型(在'節點'本身的情況下)和捆綁情況下你的節點類型的名稱)。您應該保持兩個表都是最新的,以確保修訂系統正常運行。
做到這一點雖然最簡單的方法是用PHP和節點API函數:
/* This is for a single node, obviously you'd want to loop through your custom SQL data here */
$node = new stdClass;
$node->type = 'my_type';
$node->title = 'Title';
node_object_prepare($node);
// Fields
$node->field_anime[LANGUAGE_NONE] = array(0 => array('value' => $value_for_field));
$node->field_producer[LANGUAGE_NONE] = array(0 => array('value' => $value_for_field));
// And so on...
// Finally save the node
node_save($node);
如果您使用此方法的Drupal會爲你處理了很多亂七八糟的東西(例如更新taxonomy_index
表自動添加分類術語字段到節點)
不幸的是我使用的是drupal 7,所以這個模塊不支持這個版本:(thx的回覆thow –
http://drupal.org/project/feeds –