描述
默认情况下,将重音字符转换为ASCII字符,并通过‘sanitize_title’过滤器进一步将输出限制为字母数字字符、下划线(_)和短划线(-)。
如果$title
为空并且设置了$fallback_title
,则将使用后者。
参数
- $title
-
(string) (必填) 要清理的字符串。
- $fallback_title
-
(string) (可选) 如果$title为空,则使用此参数内容。
默认值: ''
- $context
-
(string) (可选) 对字符串执行清理的操作。当设置为“save”时,该字符串将通过remove_accents()运行。
默认值: 'save'
返回
(string) 经过净化清理的字符串。
说明
“save”上下文在数据库中保存值时最常用,但也用于其他目的。当值将在查询的WHERE
子句中使用时,sanitize_title_for_query()使用“query”上下文。
源码
更新日志
版本 | 描述 |
---|---|
1.0.0 | 开始引入 |
使用示例
要创建URL的文件名部分,请使用与WordPress相同的方法:
<?php $new_url = sanitize_title('This Long Title is what My Post or Page might be'); echo $new_url; ?>
它应该返回一个格式化的值,输出如下:
this-long-title-is-what-my-post-or-page-might-be
如果标题是中文,则不适合作为HTML属性
因为该函数将文字转换为ASCII字符。这将是一场灾难。$str = "這是字串"; $str = sanitize_title( $str ); echo $str; // it will echo "%e9%80%99%e6%98%af%e5%ad%97%e4%b8%b2"