Как прикрепить изображение и тег с помощью узла - PullRequest
2 голосов
/ 26 августа 2010

Я работаю над проектом по импорту содержимого XML в Drupal 7. Я проанализировал все данные в PHP.

Пока мне удалось импортировать тело узла и его заголовок. Для Drupal 7 нет документации о том, как прикрепить изображение к узлу и тегам. Мне действительно нужна помощь, так как я потратил два дня, пытаясь найти решение. Я буду очень признателен, если кто-нибудь придумает решение. Пожалуйста, просто ведите меня куда-нибудь.

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);
}

Ответы [ 2 ]

0 голосов
/ 27 августа 2010

HI. Прочитав документацию в течение 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

0 голосов
/ 26 августа 2010

Вам необходимо добавить ImageField к вашему типу контента.Это был отдельный модуль в Drupal 6, но перенесенный в ядро ​​в Drupal 7. На странице модуля есть несколько сценариев импорта, но API, вероятно, изменился в Drupal 7.

Вы также можете проверить Модуль миграции , обеспечивающий основу для импорта в Drupal.

...