Automattic\WooCommerce\Blocks\Domain\Services
CheckoutFields::sanitize_field()
Sanitize an additional field against any custom sanitization rules.
Method of the class: CheckoutFields{}
Hooks from the method
Return
Mixed
.
Usage
$CheckoutFields = new CheckoutFields(); $CheckoutFields->sanitize_field( $field_key, $field_value );
- $field_key(string) (required)
- The key of the field.
- $field_value(mixed) (required)
- The value of the field.
Changelog
Since 8.7.0 | Introduced. |
CheckoutFields::sanitize_field() CheckoutFields::sanitize field code WC 9.7.1
public function sanitize_field( $field_key, $field_value ) { try { $field = $this->additional_fields[ $field_key ] ?? null; if ( $field ) { $field_value = call_user_func( $field['sanitize_callback'], $field_value, $field ); } /** * Allow custom sanitization of an additional field. * * @param mixed $field_value The value of the field being sanitized. * @param string $field_key Key of the field being sanitized. * * @since 8.6.0 * @deprecated 8.7.0 Use woocommerce_sanitize_additional_field instead. */ $field_value = apply_filters_deprecated( '__experimental_woocommerce_blocks_sanitize_additional_field', array( $field_value, $field_key ), '8.7.0', 'woocommerce_sanitize_additional_field', 'This action has been graduated, use woocommerce_sanitize_additional_field instead.' ); /** * Allow custom sanitization of an additional field. * * @param mixed $field_value The value of the field being sanitized. * @param string $field_key Key of the field being sanitized. * * @since 8.7.0 */ return apply_filters( 'woocommerce_sanitize_additional_field', $field_value, $field_key ); } catch ( \Throwable $e ) { // One of the filters errored so skip it. This allows the checkout process to continue. // phpcs:ignore WordPress.PHP.DevelopmentFunctions.error_log_trigger_error trigger_error( sprintf( 'Field sanitization for %s encountered an error. %s', esc_html( $field_key ), esc_html( $e->getMessage() ) ), E_USER_WARNING ); } return $field_value; }