Support

Account

Home Forums Front-end Issues How do the date of publication by a front-end form? Reply To: How do the date of publication by a front-end form?

  • Hi @buylov

    My bad. It should be like this:

    function my_acf_save_post( $post_id ) {
        
        // get new value
        $theDate = get_field('post-date', $post_id, false);
        $theDate = $theDate . " " . get_field('dummy_hour', $post_id, false);
        $theDate = $theDate . ":" . get_field('dummy_minute', $post_id, false);
        if($theDate){
            $theDate = date_create_from_format('Ymd H:i', $theDate);
            $theDate = date_format($theDate, 'Y-m-d H:i:s');
    
            $my_post = array(
              'ID'          => $post_id,
              'post_date'   => $theDate,
            );
            // do something
            
            // unhook this function so it doesn't loop infinitely
            remove_action('acf/save_post', 'my_acf_save_post');
         
            // update the post, which calls save_post again
            wp_update_post( $my_post );
         
            // re-hook this function
            add_action('acf/save_post', 'my_acf_save_post');
        }
        
    }
     
    // run after ACF saves the $_POST['acf'] data
    add_action('acf/save_post', 'my_acf_save_post', 20);

    Don’t forget to create the dummy hours and minutes fields (you can use number field for this).

    I hope this one is working 🙂