Automattic\WooCommerce\EmailEditor\Integrations\Utils
Html_Processing_Helper::clean_css_classes
Clean CSS classes by removing background and border related classes.
Method of the class: Html_Processing_Helper{}
No Hooks.
Returns
String. Cleaned CSS classes.
Usage
$result = Html_Processing_Helper::clean_css_classes( $classes ): string;
- $classes(string) (required)
- CSS classes to clean.
Html_Processing_Helper::clean_css_classes() Html Processing Helper::clean css classes code WC 10.5.0
public static function clean_css_classes( string $classes ): string {
// Limit input length to prevent DoS attacks.
if ( strlen( $classes ) > 1000 ) {
$classes = substr( $classes, 0, 1000 );
}
// Remove generic background classes but keep specific color classes.
$result = preg_replace( '/\bhas-background\b/', '', $classes );
if ( null === $result ) {
$classes = '';
} else {
$classes = $result;
}
// Remove border classes.
$result = preg_replace( '/\bhas-[a-z-]*border[a-z-]*\b/', '', $classes );
if ( null === $result ) {
$classes = '';
} else {
$classes = $result;
}
$result = preg_replace( '/\b[a-z-]+-border-[a-z-]+\b/', '', $classes );
if ( null === $result ) {
$classes = '';
} else {
$classes = $result;
}
// Clean up multiple spaces.
$result = preg_replace( '/\s+/', ' ', $classes );
if ( null === $result ) {
$classes = '';
} else {
$classes = $result;
}
return trim( $classes );
}