使用Drupal 7为每个文件创建一个节点

时间:2013-01-09 11:53:49

标签: drupal-7 nodes

我正在尝试使用Drupal 7为特定文件夹中的每个文件创建一个新节点。

我想要创建的一个很好的例子是 Youtube

当我将.mp4扩展名的视频粘贴到特定文件夹中时,我希望Drupal扫描该文件夹(我将告诉Drupal何时扫描,因此不必自动执行),并创建一个节点那段视频。我将使用管理界面手动设置标题,描述等...并发布它。

我在Drupal及其模块中知道我的方式,但我不是专家。我一直在谷歌搜索一段时间,我唯一能找到的是:

 file_scan_directory($dir, $mask, $options = array(), $depth = 0)

我不是要求提供完整的复制/粘贴解决方案,我只是希望有人可以给我一些提示,有用的链接或有关如何执行此操作的教程。

1 个答案:

答案 0 :(得分:1)

要为在目录中找到的每个视频文件创建节点,您可以使用类似于以下代码的代码。

  foreach (file_scan_directory($dir, '*.mp4', array('recurse' => FALSE) as $uri => $info) {
    $body_text = 'Build the body text.';

    $node = new stdClass();
    $node->type = $node_type;
    node_object_prepare($node);

    $node->title = 'Node Created Programmatically on ' . date('c');
    $node->language = LANGUAGE_NONE;

    $node->body[$node->language][0]['value'] = $body_text;
    $node->body[$node->language][0]['summary'] = text_summary($body_text);
    $node->body[$node->language][0]['format'] = 'full_html';

    node_save($node);
  }