wpseek.com
A WordPress-centric search engine for devs and theme authors



sanitize_html_class › WordPress Function

Since2.8.0
Deprecatedn/a
sanitize_html_class ( $classname, $fallback = '' )
Parameters: (2)
  • (string) $classname The classname to be sanitized.
    Required: Yes
  • (string) $fallback Optional. The value to return if the sanitization ends up as an empty string. Default empty string.
    Required: No
    Default: (empty)
Returns:
  • (string) The sanitized value.
Defined at:
Codex:

Sanitizes an HTML classname to ensure it only contains valid characters.

Strips the string down to A-Z,a-z,0-9,_,-. If this results in an empty string then it will return the alternative value supplied.


Source

function sanitize_html_class( $classname, $fallback = '' ) {
	// Strip out any percent-encoded characters.
	$sanitized = preg_replace( '|%[a-fA-F0-9][a-fA-F0-9]|', '', $classname );

	// Limit to A-Z, a-z, 0-9, '_', '-'.
	$sanitized = preg_replace( '/[^A-Za-z0-9_-]/', '', $sanitized );

	if ( '' === $sanitized && $fallback ) {
		return sanitize_html_class( $fallback );
	}
	/**
	 * Filters a sanitized HTML class string.
	 *
	 * @since 2.8.0
	 *
	 * @param string $sanitized The sanitized HTML class.
	 * @param string $classname HTML class before sanitization.
	 * @param string $fallback  The fallback string.
	 */
	return apply_filters( 'sanitize_html_class', $sanitized, $classname, $fallback );
}