/** * Validates saved options * * @since 1.0.0 * * @param array $input array of submitted plugin options * * @return array array of validated plugin options */ public function validate_options($input) { $valid = array(); $options = $this->get_options_list(); foreach ($options as $option) { $sanitizer = new Class_Names_Sanitize(); $valid[$option[0]] = $sanitizer->clean($input[$option[0]], $option[1]); if ($valid[$option[0]] != $input[$option[0]]) { add_settings_error($option[0], $option[0] . '_error', esc_html__($option[0] . ' error.', 'text-domain'), 'error'); } unset($sanitizer); } return $valid; }
/** * Saves metabox data * * @hooked save_post 10 * @since 1.0.0 * @access public * @param int $post_id The post ID * @param object $post_obj The post object */ public function validate_meta($post_id, $post_obj) { wp_die(print_r($this->fields)); $validate = $this->pre_validation_checks($_POST, $post_id, $post_obj); if (!$validate) { return $post_id; } wp_die('<pre>' . print_r($_POST) . '</pre>'); foreach ($this->fields as $meta) { if (!isset($_POST[$meta[0]])) { continue; } $value = empty($this->meta[$meta[0]][0]) ? '' : $this->meta[$meta[0]][0]; $sanitizer = new Class_Names_Sanitize(); $new_value = $sanitizer->clean($_POST[$meta[0]], $meta[1]); update_post_meta($post_id, $meta[0], $new_value); unset($value); unset($sanitizer); unset($new_value); // $data = $meta[2]; // $name = $meta[0]; // $type = $meta[1]; // // if ( 'repeater' === $type ) { // // $new_value = array(); // // foreach ( $data as $field ) { // // wp_die( print_r( $field ) ); // // // // foreach ( $_POST[$field[0]] as $fielddata ) { // // if ( empty( $fielddata ) ) { continue; } // // $clean[$field[0]][] = $this->sanitizer( $field[1], $fielddata ); // // } // // // // // } // // unset( $clean ); // // } else { // // $value = ( empty( $this->meta[$name][0] ) ? '' : $this->meta[$name][0] ); // $sanitizer = new Class_Names_Sanitize(); // $new_value = $sanitizer->clean( $_POST[$name], $type ); // // } // // update_post_meta( $post_id, $name, $new_value ); // // unset( $data ); // unset( $name ); // unset( $new_value ); // unset( $sanitizer ); // unset( $type ); // unset( $value ); } // foreach }