批量保存节点与文件字段 -- 7 领域 和 files 领域 drupal 相关 的问题

Bulk saving nodes with a file field


5
vote

问题

中文

我正在为笨拙网站创建批量上载函数的进度。使用Flash我能够将文件上传到应该能够处理文件的特定URL。

我想做什么,不仅仅是上传文件,而是使用保存到已使用CCK设置的文件字段的文件创建特定类型的节点。由于这些是音频文件,因此文件字段处理文件是重要的,因此可以使用GetID3模块提供其他元数据。

我看了代码/ doc,但在第一轮没有能够弄清楚如何处理这个问题。理想情况下,我错过了一些功能,可以为我处理大部分。

如果有任何人对此有经验,我将获得一些指针如何接近此问题。

英文原文

I'm in the progress of creating a bulk upload function for a Drupal site. Using flash I'm able to upload the files to a specific url that should be able to handle the files.

What I want to do, is not just to upload the files, but create a node of a specific type with the file saved to a file-field that has been setup with CCK. Since these are audio files, it's important that file-field handles the files, so additional meta data can be provided with the getid3 module.

I've taken a look at the code/doc, but wasn't able on the first round to figure out how to handle this. Ideally, there is some function that I've missed, that can handle most of this for me.

If any one has experience with this I would apreciate some pointers on how to approach this matter.

     

回答列表

5
 
vote
vote
最佳答案
 

它非常直接,使用所需的字段设置内容类型,然后要使用类似的代码:

  $file = new stdClass(); $file->filename = basename($filepath); $file->filepath = $filepath; $file->filemime = $mime; $file->filesize = filesize($filepath);  $file->uid = $uid; $file->status = FILE_STATUS_PERMANENT; $file->timestamp = time(); drupal_write_record('files', $file);   $node = new StdClass(); $node->type = 'type'; $node->body = 'body'; $node->title = 'title'; $node->field_file = array(   array(     'fid' => $file->fid,     'title' => basename($file->filename),     'filename' => $file->filename,     'filepath' => $file->filepath,     'filesize' => $file->filesize,     'mimetype' => $mime,     'data' => array(       'description' => basename($file->filename),     ),     'list' => 1,   ), ); $node->uid = 1; $node->status = 1; $node->active = 1; $node->promote = 1; node_save($node);   
 

It's pretty straight forward, setup your content type with the required fields, then you want to use code similar to this:

$file = new stdClass(); $file->filename = basename($filepath); $file->filepath = $filepath; $file->filemime = $mime; $file->filesize = filesize($filepath);  $file->uid = $uid; $file->status = FILE_STATUS_PERMANENT; $file->timestamp = time(); drupal_write_record('files', $file);   $node = new StdClass(); $node->type = 'type'; $node->body = 'body'; $node->title = 'title'; $node->field_file = array(   array(     'fid' => $file->fid,     'title' => basename($file->filename),     'filename' => $file->filename,     'filepath' => $file->filepath,     'filesize' => $file->filesize,     'mimetype' => $mime,     'data' => array(       'description' => basename($file->filename),     ),     'list' => 1,   ), ); $node->uid = 1; $node->status = 1; $node->active = 1; $node->promote = 1; node_save($node); 
 
 

相关问题

3  如何处理博客标签在贡献主题中?  ( How to handle blog tags in a contrib theme ) 
在博客或博客的网站中,分类通常用于标签和类别。 在Drupal 6中,Node.TPL.php文件可以使用$分类系统,如果它们需要访问与当前节点相关联的UnRended分类链接数组。该变量通常是通过Control主题假设来包含帖子标记和或类别,并且相应地呈现。 在Drupal 7中,$分类学不再可用。 是什么选择...

11  hook_preprocess_page():如何讲述视图页面?  ( Hook preprocess page how to tell a views page ) 
im写一个需要在视图页面中插入一些javascript和css文件的自定义模块。 im使用hook_preprocess_page,但我无法判断当前页面是否来自视图: function mymodule_preprocess_page(&vars) { var_dump($vars); //outpu...

5  Field API与自定义代码  ( Field api versus custom code ) 
如果我需要仅为用户配置文件添加自定义字段,它是否更好地创建使用字段API的模块,或者使用自己的代码以自定义URL显示自定义字段的模块,并保存数据在自己的数据库表中? 字段API无法实现决定哪些字段可对其用户可见的权限;是足以实现自定义代码的原因? ...

5  视图幻灯片VS列表视图+ jQuery Cycle Lite?  ( Views slideshow vs list viewjquery cycle lite ) 
在我的工作站主页上的旋转图像是以列表格式的视图创建。我正在使用 jquery循环Lite 插件,用于旋转效果。 CycliT.Lite.js文件在我的主题的.info文件中的脚本数组中设置,页面中有一点代码.TPL.php检查这是否是主页,如果是,则设置旋转器。< / p> 现在我正在第二个旋转器用于另一个部分,我一...

3  如何使功能仅适用于某些空格?  ( How to make a feature available only to certain spaces ) 
对于Drupal 6开放式庭院站点(即,功能,空格,有机组)我正在运行,我创建了一些自定义功能,只能真正适用于站点上的数百个群体。 它代表,"自定义功能" 配置屏幕显示所有的功能,包括那些我想故意限制到几个特殊群体的那些。 预防每个小组提供这些特殊功能的最佳方法,同时保留了特殊组上的这些功能? ...

4  在子域之间共享登录  ( Login shared between subdomains ) 
如果我应该允许用户使用相同的用户名/密码登录,在以下解决方案之间选择时,我应该考虑什么? 安装,并使用面包店单点登录系统在主站点上,以及所有子域。 共享包含用户数据的数据库表。 ...

3  如何追溯应用Mollom垃圾邮件过滤?  ( How to retroactively apply mollom spam filtering ) 
我被要求清理几年运行的网站,除了大量有效内容之外还累积了一些垃圾邮件。 我刚刚在网站上安装了Mollom,以帮助减少未来的垃圾邮件帖子;但是有些方法可以让Mollom过程已经发布到网站上的内容,并为我的评论销售潜在的垃圾内容(而不是单独查看全部有效内容的所有)? ...

4  直接调用Mollom Captcha  ( Invoke mollom captcha directly ) 
我在ctools form向导中有一个自定义表单,我想使用mollom。有没有API函数,我可以用来将它放在该页面上的表单API中? ...

2  gmap视图模块 - 弹出窗口太大了  ( Gmap views module popups are too big ) 
我正在使用gmap模块及其视图对应。我拥有的问题是,我正在使用自定义文本字段来显示以我从查询中删除的HTML包裹的字段。但是,弹出窗口不会正确尺寸;它最终太大了。这是我的自定义文本字段的代码: <div id="col1"> [field_thtr_img_fid] </div> <div id="col2"...

2  在哪里插入额外的注销功能的最佳位置?  ( Where is the best place to insert additional logout functionality ) 
在用户注销的情况下插入附加逻辑可能会在user.pages.inc中查看 function user_logout() .inc。此代码在核心模块中,您不应该编辑它,但工作得很好...例如,通过将以下代码添加到'user_logout()'函数的顶部... $last_run = variable_get('...

9  以编程方式冒充另一个用户,而不会导致当前登录用户退出  ( Programmatically impersonating another user without causing the currently logged ) 
如何更改全局 $user 的值,执行自己的代码,并恢复 99887664 的原始值,而不会导致当前用户注销如果发生错误? ...

16  模块如何检测输出“访问拒绝”页面?  ( How can a module detect when the access denied page is output ) 
模块如何检测Drupal输出"访问被拒绝" 页面时? 我知道如何用Drupal 6来做;我需要知道如何用Drupal 7进行。 ...

3  如何自动突出显示页面上显示的代码的语法?  ( How to automatically highlight syntax of code displayed on page ) 
我正在开发一个网站,用于从不同的编程语言发布我的代码。我想突出用不同颜色的代码语法。但是,手动这样做是耗时的。 是否有任何模块或方法可以自动执行此操作?严格,它应该以CSS方式完成。 ...

1  自定义SQL:NodeReference Joins和最新视频  ( Custom sql nodereference joins and latest vid ) 
我有一个构成自定义SQL查询的时间。 查询有多个Nodereference,需要返回最新的节点修订版。 我理解得很好,但由于某种原因,返回最新版本的额外复杂性正在绊倒我。 我宁愿通过创建视图并以编程方式执行它们,仅仅因为 WHERE 条款的复杂性,就会以编程方式执行它们。 我已经尝试翻译等同的视图的输出,但是对视图粘...

7  如何创建“逐步处理”内容类型?  ( How might i create a step by step process content type ) 
我正在考虑为Intranet创建一个过程手册。大多数(全部?)的流程都有一个非常明确的订单,尽管实际顺序可能不时改变。该计划是有主题专家,可能是六十多个左右,输入和更新流程页面。该网站的用户需要能够在与客户交互时快速审查流程,通常面对面。 这是我想到的选项: 培训作者使用有序列表。 pro:最容易的。康科:依靠培...

20  如何使用带有自定义表的数据与寻呼机进行排序表?  ( How do you make sortable tables with a pager with data from a custom table ) 
对于Drupal 6,您可以做到这样的事情: $header = array( array('data' => t('Order id'), 'field' => 'order_id'), ... array('data' => t('Transaction time'), 'field' => 'p...

148  推荐的目录权限是什么?  ( What are the recommended directory permissions ) 
我正在努力部署drupal 7站点,我找不到关于建议的安全有效文件和目录权限的任何文档。 特别是 default/files/ (也是子目录?), settings.php , .htaccess 以及其他任何我应该知道的。 ...

5  从Drupal表单字段/标签中删除冒号  ( Remove colons from drupal form fields labels ) 
如何删除:从使用Drupal形式API制作的表单后出现: ...

5  主题Drupal表单API复选框作为网格  ( Theme drupal form api checkboxes as a grid ) 
我有一个自定义表单,显示大约2多个复选框的表单元素。如果可能,我想在表中每行输出3个。我怎么能做到这一点? $form['preference'] = array( '#type' => 'checkboxes', '#default_value' => 1373, '#require...

2  如何表示用户作为“系统帐户”?  ( How to denote a user as a system account ) 
在Unix世界中,有"用户帐户" 用于人类使用,并且有软件使用"系统帐户" 。 在一个drupal站点上,我有几个系统账户旨在通过 services.module API呼叫使用。 我希望这些帐户能够通过服务API(显然)登录,但我想阻止这些帐户通过标准 99887665 表单来登录。我还想防止这些帐户在标准的"活...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.