esc_html() 转义字符串,使其不被解析为HTML。字符,如< 已转换为<, 例如这在读者看来是一样的,但这意味着如果输出的值是<script> 然后浏览器不会将其解释为实际的脚本标记。
只要输出的值不应包含HTML,就使用此函数
esc_attr() 转义字符串,以便在HTML属性中安全使用,如class="" 例如这可以防止值脱离HTML属性。例如,如果值为"><script>alert();</script> 您尝试将其输出到HTML属性中,它将关闭当前HTML标记并打开脚本标记。这是不安全的。通过转义该值,它将无法关闭HTML属性和标记并输出不安全的HTML。
在HTML属性内输出值时使用此函数
esc_url() 转义字符串以确保它是有效的URL。
在href="" 或src="" 属性
esc_textarea() 转义值,以便在<textarea> 要素通过使用此函数转义值,可以防止在<textarea< 从关闭<textarea> 元素并输出其自己的HTML。
在<textarea> 元素
esc_html() 和esc_attr() 还有以结尾的版本__(), _e() 和_x(). 这些用于输出可翻译字符串。
WordPress具有功能,__(), _e() 和_x(), 用于输出可翻译的文本。__() 返回可翻译字符串,_e() 回显可翻译字符串,以及_x() 返回具有给定上下文的可翻译字符串。你以前可能见过他们。
由于您不一定相信翻译文件包含安全值,因此在输出可翻译字符串时使用这些函数可以确保输出的字符串不会导致上述问题。
输出可翻译字符串时使用这些函数