Support

Account

Home Forums Backend Issues (wp-admin) Add row to repeater for each product purchased and predefine post object value Reply To: Add row to repeater for each product purchased and predefine post object value

  • For anyone looking to use this, I’ve amended my code:

    /*
    ACF - add repeater with purchases to user profile after order complete
    */
    function mm_add_repeater_rows_on_order_complete( $order_id ) {
    	
    	// set order object
    	$order = wc_get_order( $order_id );
    	
    	// add rows for each product
    	foreach( $order->get_items() as $item_id => $item ) {
    		
    		// get repeater field key
    		$field_key = 'field_58b69a624605c';
    		
    		// get user id
    		$user = wp_get_current_user();
    		$user_id = 'user_' . $user->id;
    		
    		// set field value as product name
    		$value = get_field( $field_key, $user_id );
    		$value[] = array( 'mm_user_challenge' => $item['product_id'] );
    		
    		// update the field
    		update_field( $field_key, $value, $user_id );
    	}
    	
    	// add order note to confirm
    	$order->add_order_note( __( 'Challenges successfully added to user profile.', 'woocommerce' ) );
    }
    add_action( 'woocommerce_order_status_completed', 'mm_add_repeater_rows_on_order_complete', 10, 1 );