質問

Drupalサイトのバルクアップロード関数を作成する進歩を遂げています。フラッシュを使用すると、ファイルを処理できるはずの特定のURLにファイルをアップロードできます。

私がやりたいのは、ファイルをアップロードするだけでなく、CCKでセットアップされたファイルフィールドにファイルを保存して特定のタイプのノードを作成することです。これらはオーディオファイルであるため、ファイルフィールドがファイルを処理することが重要であるため、追加のメタデータをgetID3モジュールで提供できます。

私はコード/ドキュメントを見ましたが、最初のラウンドでこれを処理する方法を見つけ出すことはできませんでした。理想的には、私が見逃した機能がいくつかあります。

誰かがこれを経験している場合、私はこの問題にアプローチする方法に関するいくつかのポインターを繰り返します。

役に立ちましたか?

解決

必要なフィールドでコンテンツタイプをセットアップすると、これに類似したコードを使用する必要があります。

$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);
ライセンス: CC-BY-SA帰属
所属していません drupal.stackexchange
scroll top