field, array( 'multiple' => false, 'options' => array(), 'query_args' => array(), )); $value = (is_array($this->value)) ? $this->value : array_filter((array) $this->value); echo $this->field_before(); if (isset($this->field['options'])) { $options = $this->field['options']; $options = (is_array($options)) ? $options : array_filter($this->field_data($options, false, $args['query_args'])); if (is_array($options) && !empty($options)) { echo '
'; foreach ($options as $key => $option) { $type = ($args['multiple']) ? 'checkbox' : 'radio'; $extra = ($args['multiple']) ? '[]' : ''; $active = (in_array($key, $value) || (empty($value) && empty($key))) ? ' csf--active' : ''; $checked = (in_array($key, $value) || (empty($value) && empty($key))) ? ' checked' : ''; echo '
'; echo 'field_attributes() . esc_attr($checked) . '/>'; echo $option; echo '
'; } echo '
'; } else { echo (!empty($this->field['empty_message'])) ? esc_attr($this->field['empty_message']) : esc_html__('No data available.', 'csf'); } } echo $this->field_after(); } } }