Title: ACF Image
Last modified: January 24, 2024

---

# ACF Image

 *  [cwoody1980](https://wordpress.org/support/users/cwoody1980/)
 * (@cwoody1980)
 * [2 years, 4 months ago](https://wordpress.org/support/topic/acf-image/)
 * First off, this plugin has been a lifesaver. Thanks so much!
 * I have an ACF image field that returns the image ID. But when I use the upload
   file field to update the image it just removes the image and doesn’t replace 
   it.

Viewing 4 replies - 1 through 4 (of 4 total)

 *  Plugin Author [Alex Chernov](https://wordpress.org/support/users/alexusblack/)
 * (@alexusblack)
 * [2 years, 4 months ago](https://wordpress.org/support/topic/acf-image/#post-17379528)
 * Hi [cwoody1980](https://wordpress.org/support/users/cwoody1980/), in last version
   I added some small stuff for compatibility for ACF. You can specify to save image
   as Post ID by adding this to the target field name in mapping:
   field_name<post_id
   >There is still gonna be a small issue if that is an ACF field, as format of 
   WP meta and ACF fields aren’t fully compatible. I will release new version this
   week that allows to force saving in ACF field format. Please lookout for version
   1.1.5, it will support field_name<post_id|acf> .
 * I already have the code for my own projects, just need to find time to make WP
   release.
 *  Thread Starter [cwoody1980](https://wordpress.org/support/users/cwoody1980/)
 * (@cwoody1980)
 * [2 years, 4 months ago](https://wordpress.org/support/topic/acf-image/#post-17402974)
 * I’m looking forward to the update. Also, is there a way to prevent the content
   being updated each time?
 *  [justinosa](https://wordpress.org/support/users/justinosa/)
 * (@justinosa)
 * [2 years, 2 months ago](https://wordpress.org/support/topic/acf-image/#post-17538002)
 * [@cwoody1980](https://wordpress.org/support/users/cwoody1980/), i had a similar
   need to yours. Instead of using the plugin though, I used Gravity Form’s `gform_after_submission`
   hook. 
   Basically the code below grabs the file and post id from the submission,
   uploads the file to the media library, then updates the ACF field using ACF’s`
   update_field` function.
 *     ```wp-block-code
       <?php
       add_action('gform_after_submission', 'update_acf_file_from_gravity_form_with_attachment', 10, 2);
       function update_acf_file_from_gravity_form_with_attachment($entry, $form) {
   
           // check if it's the correct form
           if ($form['id'] != 4) return;
   
           // Specify the ID of the file upload field
           $file_field_id = '21';
           $file_url = $entry[$file_field_id];
           // var_dump($entry);
   
           // Specify post ID field
           $post_id_field_id = '15';
           $post_id = $entry[$post_id_field_id];
   
           // Ensure a file URL and post ID are provided
           if (!empty($file_url) && !empty($post_id)) {
               // Proceed to upload the file to the WordPress Media Library
               $attachment_id = upload_file_to_media_library($file_url, $post_id);
               if ($attachment_id) {
                   var_dump($attachment_id);
                   var_dump($post_id);
                   // Use the ACF update_field function to update the file field with the attachment ID
                   $field_key = 'rental_pricing'; 
                   update_field($field_key, $attachment_id, $post_id);
               }
           }
       }
   
       function upload_file_to_media_library($file_url, $post_id) {
           require_once(ABSPATH . 'wp-admin/includes/image.php');
           require_once(ABSPATH . 'wp-admin/includes/file.php');
           require_once(ABSPATH . 'wp-admin/includes/media.php');
   
           // Download file to temp location
           $tmp = download_url($file_url);
   
           // Check for download errors
           if (is_wp_error($tmp)) {
               // Handle error
               return false;
           }
   
           $file_array = array();
           // Set variables for storage
           // Extract filename and extension from the URL
           $file_array['name'] = basename($file_url);
   
           // Prepare an array for the attachment
           $file_array['tmp_name'] = $tmp;
   
           // Upload the file to the Media Library
           $id = media_handle_sideload($file_array, $post_id);
   
           // Check for handle sideload errors.
           if (is_wp_error($id)) {
               @unlink($file_array['tmp_name']); // Clean up
               return false;
           }
   
           return $id; // Return the attachment ID
       }
       ```
   
 *  Thread Starter [cwoody1980](https://wordpress.org/support/users/cwoody1980/)
 * (@cwoody1980)
 * [2 years, 2 months ago](https://wordpress.org/support/topic/acf-image/#post-17538007)
 * Yeah that’s what I ended up doing. Thanks!

Viewing 4 replies - 1 through 4 (of 4 total)

The topic ‘ACF Image’ is closed to new replies.

 * ![](https://ps.w.org/post-update-addon-gravity-forms/assets/icon.svg?rev=2592441)
 * [Post Update Add-On - Gravity Forms](https://wordpress.org/plugins/post-update-addon-gravity-forms/)
 * [Support Threads](https://wordpress.org/support/plugin/post-update-addon-gravity-forms/)
 * [Active Topics](https://wordpress.org/support/plugin/post-update-addon-gravity-forms/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/post-update-addon-gravity-forms/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/post-update-addon-gravity-forms/reviews/)

## Tags

 * [ACF](https://wordpress.org/support/topic-tag/acf/)
 * [image](https://wordpress.org/support/topic-tag/image/)

 * 4 replies
 * 3 participants
 * Last reply from: [cwoody1980](https://wordpress.org/support/users/cwoody1980/)
 * Last activity: [2 years, 2 months ago](https://wordpress.org/support/topic/acf-image/#post-17538007)
 * Status: not resolved