it-swarm-ko.tech

파일 필드가있는 대량 저장 노드

Drupal 사이트에 대한 일괄 업로드 기능을 만드는 중입니다. 플래시를 사용하여 파일을 처리 할 수있는 특정 URL에 파일을 업로드 할 수 있습니다.

제가하고 싶은 것은 단순히 파일을 업로드하는 것이 아니라 CCK로 설정된 파일 필드에 저장된 파일로 특정 유형의 노드를 만드는 것입니다. 이들은 오디오 파일이므로 file-field가 파일을 처리하는 것이 중요하므로 getid3 모듈과 함께 추가 메타 데이터를 제공 할 수 있습니다.

코드/문서를 살펴 봤지만 첫 번째 라운드에서이 문제를 처리하는 방법을 알아낼 수 없었습니다. 이상적으로는 제가 놓친 기능이 있습니다.이 기능은 대부분을 처리 할 수 ​​있습니다.

누구든지 이것에 대한 경험이 있다면 나는이 문제에 접근하는 방법에 대한 몇 가지 조언을 할 것입니다.

5
googletorp

매우 간단합니다. 필수 필드로 콘텐츠 유형을 설정 한 다음 다음과 유사한 코드를 사용하고 싶습니다.

$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);
5
Decipher