Support

Account

Home Forums Bug Reports Setting $field['default_value'] not working in acf/prepare_field Reply To: Setting $field['default_value'] not working in acf/prepare_field

  • Hi @hube2,
    currently, I’ve split up the code into setting the available choices for the checkboxes in acf/prepare_field and defining the default value for the field in acf/load_field. I hope my code below is enough to understand what I’m doing.

    
    function wptd_acf_load_brot_verfuegbarkeit_values( $field ) {
    
        if (!is_admin()) {
            // Only in frontend
            $verfuegbarkeiten = get_query_var('verfuegbarkeiten') ?? $_SESSION['verfuegbarkeiten'] ;
            $sortiment_heute = get_query_var('sortiment_heute') ?? $_SESSION['sortiment_heute'];
    
            if (!empty($sortiment_heute)) {
                $field['default_value'] = wptd_get_brote_available($sortiment_heute, $verfuegbarkeiten);
            }
        }
    
        return $field;
    }
    add_filter('acf/load_field/key=field_5eddd053baf5a', 'wptd_acf_load_brot_verfuegbarkeit_values');
    
    function wptd_acf_load_brot_verfuegbarkeit_choices( $field ) {
    
        if (!is_admin()) {
            // Only in frontend
            $sortiment_heute = get_query_var('sortiment_heute');
    
            if (!empty($sortiment_heute)) {
                $field['choices'] = array_reduce($sortiment_heute, function($result, $item) {
                    $result[$item] = get_the_title($item);
                    return $result;
                }, []);
            }
        }
    
        return $field;
    }
    add_filter('acf/prepare_field/key=field_5eddd053baf5a', 'wptd_acf_load_brot_verfuegbarkeit_choices');