簡體   English   中英

從其他(xml)內容自動創建drupal頁面(節點)

[英]Creating drupal pages (nodes) automatically from other (xml) content

我目前有一個來自客戶端的XML數據源,這個XML包含我們正在制作的網站所包含的所有頁面的內容。 現在解析並准備好所有這些內容之后,有沒有人知道我們如何(使用)PHP自動創建drupal節點(包括該節點的所有相關字段,即CCK字段,路徑)。

理想情況下,我們可以將所有內容發送到節點並創建節點。 現在我不介意把它直接放到數據庫中,但我不太清楚db表的更新(因為drupal設置有很多表)。

我已經搜索了谷歌和drupal文檔,但我真的找不到這個(我認為這將是一個簡單的,經常使用的功能由網絡開發人員在drupal ..)

您的意見將非常感謝!

提前致謝,

沙迪

您可以使用Drupal的node_save函數,如下所示:

require 'includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

$node = new stdClass();

$node->title = "My imported node";
$node->body = "The body of my imported node.";
$node->type = 'story'; 
$node->created = time();
$node->changed = $node->created;
$node->status = 1;
$node->promote = 1;
$node->sticky = 0;
$node->format = 1;
$node->uid = 1;

node_save($node);

有關更多信息,請參閱Acquia網站上的這篇文章(包括CCK字段,如果您使用的是應該在node_save上創建路徑的node_save ): httpnode_save 節點

您應該能夠將node_save()用於此目的。 我沒有嘗試使用cck字段,但如果添加字段,則應通過hooks run保存。 但是,如果不通過代碼創建包含字段的nodetype,則該函數將取決於您在管理界面中執行的設置。

如果在數組結構中設置正確的類型和格式字段, node_save適用於cck。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM