/** * Normalize parameters for field * * @param array $field * * @return array */ static function normalize($field) { $field = parent::normalize($field); $field = wp_parse_args($field, array('flatten' => true, 'query_args' => array(), 'field_type' => 'select')); if ('checkbox_tree' === $field['field_type']) { $field['field_type'] = 'checkbox_list'; $field['flatten'] = false; } switch ($field['field_type']) { case 'checkbox_list': case 'radio_list': $field['flatten'] = 'radio_list' === $field['field_type'] ? true : $field['flatten']; $field['multiple'] = 'radio_list' === $field['field_type'] ? false : true; $field = RWMB_Input_Field::normalize($field); break; case 'select_advanced': $field = RWMB_Select_Advanced_Field::normalize($field); $field['flatten'] = true; break; case 'select_tree': $field = RWMB_Select_Field::normalize($field); $field['multiple'] = true; break; case 'select': default: $field = RWMB_Select_Field::normalize($field); break; } return $field; }