2

XML コンテンツを Drupal 7 にインポートするプロジェクトに取り組んでいます。PHP ですべてのデータを解析しました。

これまでのところ、ノード本体とそのタイトルのインポートに成功しています。イメージをノードとタグにアタッチする方法に関する Drupal 7 のドキュメントはありません。解決策を見つけるのに 2 日間費やしたので、本当に助けが必要です。誰かが解決策を思いついたら、私は非常に感謝します. どこかへ案内してください。

function make_nodes($nodes) {
  $new_node = $nodes[0];
  $node = new stdClass();
  $node->title = $new_node['title'];
  $node->body['und'][0]['value'] = $new_node['body'];
  $node->type = 'article';
  $node->created = $new_node['timestamp'];
  $node->changed = $new_node['timestamp'];
  $node->status = 1;
  $node->promote = 1;
  $node->sticky = 0;
  $node->body['und'][0]['format'] = 1;
  $node->uid = (isset($local_user->uid) && !empty($local_user->uid)?$local_user->uid:1);
  $node->language = 'en';
  $node->timestamp = $new_node['timestamp'];
  $node->revision = 0;
  node_submit($node);
  node_save($node);
}
4

2 に答える 2

0

コンテンツタイプにImageFieldを追加する必要があります。これはDrupal6では別のモジュールでしたが、Drupal 7ではコアに移動しました。モジュールページにリンクされたインポートスクリプトがいくつかありますが、APIはおそらくDrupal7で変更されました。

Drupalにインポートするためのフレームワークを提供するMigrateモジュールをチェックアウトすることもできます。

于 2010-08-26T16:21:22.703 に答える
0

こんにちは。10時間ドキュメントを読んだ後、私はついにそれをやった...私はここに私のコードを含めています

$uri = 'bird/bird_image.jpg';
$files =  new stdClass();
$files->uid = (isset($local_user->uid) && !empty($local_user->uid)?$local_user->uid:1);
$files->filename = 'bird.jpg';
$files->uri = $uri; 
$files->filemime = file_get_mimetype($uri);
$files->status = 1;
$files->timestamp = $new_node['timestamp'];

file_copy($files);

それがファイルをアップロードしてdrupal 7データベースにアップロードする方法です

于 2010-08-27T02:31:33.010 に答える