/** * Validates user input when zone-specific options have been saved. * @since 2.0 */ public function validate($output, $input, $defaults) { $output['zones'][$this->id]['hide_duplicates'] = ar2_theme_options_validate_checkbox($input['zones'][$this->id]['hide_duplicates']); $output['zones'][$this->id]['ignore_sticky'] = ar2_theme_options_validate_checkbox($input['zones'][$this->id]['ignore_sticky']); return $output; }
/** * Validates user input when section-specific options have been saved. * @since 2.0 */ public function validate($output, $input, $defaults) { if (isset($input['opt_type']) && $input['opt_type'] != 'zone-' . $this->zone->id) { return $output; } $output['sections'][$this->id]['enabled'] = ar2_theme_options_validate_checkbox($input['sections'][$this->id]['enabled']); $output['sections'][$this->id]['title'] = isset($input['sections'][$this->id]['title']) ? esc_attr($input['sections'][$this->id]['title']) : $defaults['sections'][$this->id]['title']; $output['sections'][$this->id]['post_type'] = isset($input['sections'][$this->id]['post_type']) && post_type_exists($input['sections'][$this->id]['post_type']) ? $input['sections'][$this->id]['post_type'] : $defaults['sections'][$this->id]['post_type']; $output['sections'][$this->id]['taxonomy'] = isset($input['sections'][$this->id]['taxonomy']) && taxonomy_exists($input['sections'][$this->id]['taxonomy']) ? $input['sections'][$this->id]['taxonomy'] : $defaults['sections'][$this->id]['taxonomy']; $output['sections'][$this->id]['terms'] = isset($input['sections'][$this->id]['terms']) ? ar2_theme_options_validate_terms_input($input['sections'][$this->id]['terms']) : $defaults['sections'][$this->id]['terms']; $output['sections'][$this->id]['type'] = isset($input['sections'][$this->id]['type']) && in_array($input['sections'][$this->id]['type'], array_keys($this->list_display_types())) ? $input['sections'][$this->id]['type'] : $defaults['sections'][$this->id]['type']; if (!$this->settings['use_main_query']) { $output['sections'][$this->id]['count'] = isset($input['sections'][$this->id]['count']) && is_numeric($input['sections'][$this->id]['count']) ? absint($input['sections'][$this->id]['count']) : $defaults['sections'][$this->id]['count']; } return $output; }