Attaching image files to nodes programmatically in Drupal 7

jantimon picture jantimon · Feb 26, 2011 · Viewed 44.7k times · Source

Is it possible to add an image to a node programmatically?

Answer

Daniel Wehner picture Daniel Wehner · Feb 28, 2011

Here is an example code using which you can use with node_save

$filepath = drupal_realpath('misc/druplicon.png');
  // Create managed File object and associate with Image field.
  $file = (object) array(
    'uid' => 1,
    'uri' => $filepath,
    'filemime' => file_get_mimetype($filepath),
    'status' => 1,
  );

  // We save the file to the root of the files directory.
  $file = file_copy($file, 'public://');

  $node->field_image[LANGUAGE_NONE][0] = (array)$file;
`