do_filter( $rule, $instance_value ); } return $instance_value; } /** * Filter the value of key * * List of functions for sanitizing data: * strip_tags * wp_strip_all_tags * esc_attr * esc_url * esc_textarea * sanitize_email * sanitize_file_name * sanitize_html_class * sanitize_key * sanitize_meta * sanitize_mime_type * sanitize_sql_orderby * sanitize_text_field * sanitize_title * sanitize_title_for_query * sanitize_title_with_dashes * sanitize_user * sanitize_option // sanitize_option ha bisogno di 2 valori eseguire test * * @access private * @param string $rule The filter name you want to use. * @param string $instance_value The value you want to filter. * @return string Return the value filtered */ private function do_filter( $rule, $instance_value = '' ) { if ( method_exists( $this, $rule ) ) { return $this->$rule( $instance_value ); } elseif ( function_exists( $rule ) ) { return call_user_func( $rule, $instance_value ); } else { return sanitize_text_field( $instance_value ); } } /** * Sanitize taxonomy_multiple_select and return an array with taxonomies ID * * @param array|string $instance_value The value to sanitize * @return array The sanitized array */ public function sanitize_taxonomy_multiple_select( $instance_value ) { if ( ! $instance_value ) { return $instance_value; } $array = array_map( 'esc_attr', (array) $instance_value ); $array = array_map( 'absint', $array ); $count = count( $array ); if ( 1 === $count && 0 === $array[0] ) { return array(); } return $array; } /** * Sanitize taxonomy_multiple_select and return an array with taxonomies ID * * @param array|string $instance_value The value to sanitize * @return array The sanitized array */ public function sanitize_select_multiple( $instance_value ) { if ( ! $instance_value ) { return $instance_value; } $array = array_map( 'esc_attr', (array) $instance_value ); $count = count( $array ); if ( 1 === $count && 0 === $array[0] ) { return array(); } return $array; } }