Support

Account

Home Forums General Issues Using a field to define a new post title with acf_form Reply To: Using a field to define a new post title with acf_form

  • Hi @edcraddock


    @techliminal
    is correct. You should use the acf/save_post and wp_update_post() to do that. Also, don’t forget to remove the hook before calling the wp_update_post() function to avoid the infinite loop issue. It should be something like this:

    add_action('acf/save_post', 'my_save_post', 20);
    function my_save_post($post_id){
      
      // Get the data from a field
      $new_title = get_field('title_field_name', $post_id);
      
      // Set the post data
      $new_post = array(
          'ID'           => $post_id,
          'post_title'   => $new_title,
      );
      
      // Remove the hook to avoid infinite loop. Please make sure that it has
      // the same priority (20)
      remove_action('acf/save_post', 'my_save_post', 20);
      
      // Update the post
      wp_update_post( $new_post );
      
      // Add the hook back
      add_action('acf/save_post', 'my_save_post', 20);
      
    }

    I hope this helps 🙂