函数
sanitize_html_class( string $class, string $fallback = '' )
描述
清理WordPress里HTML类名中的非法字符,以确保它只包含有效字符。
将字符串剥离为 AZ,az,0-9,_,-
。
参数
$class
,( string ) (必需) 要清理的类名。
$fallback
,( string ) (可选) 如果清理结束为空字符串时要返回的值。默认为空字符串。默认值:''
。
返回值
(string) 清理后的值。如果这导致空字符串,则它将返回提供的替代值。
建站迷·划重点
类名不能以数字开头,此函数不考虑这一点。
此函数可能会返回一个以数字开头的字符串,根据 W3C
定义,这些字符串不是有效的类名。
相关函数
- sanitize_email()
- sanitize_file_name()
- sanitize_html_class()
- sanitize_key()
- sanitize_meta()
- sanitize_mime_type()
- sanitize_option()
- sanitize_sql_orderby()
- sanitize_text_field()
- sanitize_title()
- sanitize_title_for_query()
- sanitize_title_with_dashes()
- sanitize_user()
- esc_url_raw()
- wp_filter_post_kses()
- wp_filter_nohtml_kses()
来源
文件:wp-includes/formatting.php
更新日志
版本 | 描述 |
---|---|
2.8.0 | 介绍。 |
示例
$post_class = sanitize_html_class( $post->post_title ); echo '<div class="' . $post_class . '">';
一次性清理多个 HTML 类。
/** * * @param array $classes Classes to be sanitized. * @param string $return_format The return format, 'input', 'string', or 'array'. * @return array|string */ function prefix_sanitize_html_classes( $classes, $return_format = 'input' ) { if ( 'input' === $return_format ) { $return_format = is_array( $classes ) ? 'array' : 'string'; } $classes = is_array( $classes ) ? $classes : explode( ' ', $classes ); $sanitized_classes = array_map( 'sanitize_html_class', $classes ); if ( 'array' === $return_format ) { return $sanitized_classes; } else { return implode( ' ', $sanitized_classes ); } }
创建这个函数来帮助转义多个 HTML 类,你可以给它一个类数组或一个由分隔符分隔的字符串。
if( ! function_exists("sanitize_html_classes") ){ function sanitize_html_classes($classes, $sep = " "){ $return = ""; if(!is_array($classes)) { $classes = explode($sep, $classes); } if(!empty($classes)){ foreach($classes as $class){ $return .= sanitize_html_class($class) . " "; } } return $return; } }
本文由 猫斯基 原创发布。
著作权均归用户本人所有。独家文章转载,请联系本站管理员。获得授权后,须注明本文地址! 本文地址:https://maosiji.com/wordpress/wordpress-sanitize_html_class.html