Я пишу скрипт для программного добавления узлов, и я не знаю, как правильно добавить / прикрепить изображение. На самом деле я не очень знаком с Drupal.
Вот (образцы) графических объектов, которые я нашел во время print_r
использования существующих $node
я:
field_image: Array ([und] => Array ([0] => Array ([fxid] => 3089 [alt] => [title] => [width] => 95 [height] => 126 [uid] = > 249 [имя файла] => helloworld.jpg [uri] => public: //helloworld.jpg [filemime] => image / jpeg [filesize] => 3694 [status] => 1 [timestamp] => 1346748001 [type ] => image [media_title] => Array () [media_description] => Array () [field_tags] => Array () [field_license] => Array ([und] => Array ([0] => Array ([ значение] => ничего))) [metatags] => Array () [rdf_mapping] => Array ())))
Следующий, который я нашел, следующий.
field_temp_image: Array ([und] => Array ([0] => Array ([value] => http://www.example.com/sample-path/helloworld.jpg [format] => [safe_value] => http://www.example.com/sample-path/helloworld.jpg))) `
Как мне добавить изображение к этому узлу таким образом?
file_usage_add($file, 'file', 'node', $n->nid);
в конце, чтобы предотвратить случайное удаление файла.node_save
срабатывании.Drupal 8
Для Drupal 8 это будет выглядеть следующим образом. Сначала добавьте файл и получите идентификатор файла. Затем создайте узел и прикрепите указанный идентификатор файла.
источник
Может быть, это не совсем то, что вам нужно, но почему бы просто не добавить ссылку на изображение в поле, как предлагает ваш пример 2? А затем в файле шаблона содержимого визуализируйте это поле как изображение.
В потоке создания узла:
В типе контента:
источник