2011-06-24 45 views
1

的Drupal 6 CCK組字段我有以下設置在Drupal 6:如何創建/更新特定內容類型

節點內容類型:uprofile

領域: 場組:group_about與領域field_about_me, field_programinfo

我使用以下邏輯創建節點:

$node = new stdClass(); 
$node->title = trim($name); 
$node->type = 'uprofile'; 
$node->created = time(); 
node_save($node); 

我試圖保存節點使用各種米編制方法,但他們都是徒勞的,這裏是一個辦法我想這(從Drupal站點):

$form_state = array(); 
module_load_include('inc', 'node', 'node.pages'); 
$form_state['values']['type'] = 'uprofile'; 
$form_state['values']['status'] = 1; 
$form_state['values']['op'] = t('Save'); 
$nodetype = array('type' => 'uprofile'); 
$form_state['values']['title'] = trim($name); 
form_state['values']['field_about_me'][0]['value'] = trim($name); 
$form_state['values']['field_programinfo'][0]['value'] = trim($name); 
drupal_execute('uprofile_node_form', $form_state, (object)$nodetype); 

這有沒有影響,我出的這個想法。任何人都可以請指導我在正確的方向。

謝謝。

回答

0

使用這樣的事情在一個點上獲取並從其他數據庫重新格式化數據,並將其插入到Drupal的去過:

$node = new StdClass(); 
$node->type = 'NODETYPE'; 
$node->status = 1; 
$node->format = 2; 
$node->moderate = 0; 
$node->promote = 0; 
$node->sticky = 0; 
$node->revision = 0; 
$node->comment = 0; 
// Main node content 
$node->title = 'TITLE'; 
$node->teaser = ''; 
$node->body = 'BODY'; 
// Author details 
$node->uid = 1; 
$node->name = 'USERNAME'; 
// CCK fields 
$node->field_NODETYPE_summary[0]['value'] = 'SUMMARY'; 
$node->field_NODETYPE_details[0]['value'] = 'DETAILS'; 
// Submit and save 
$node = node_submit($node); 
node_save($node); 

那就需要一些賠償您的特定情況下使用,但應該給你的東西從...開始。

+0

我已將此更改爲 '$ node = new StdClass(); $ node-> title = trim($ name); $ node-> type ='uprofile'; $ node-> status = 1; $ node-> uid = $ org_user-> uid; $ node-> field_about_me [0] ['value'] = trim($ name); ' 這對設置組字段CCK值沒有影響。 任何想法? –

相關問題