问题描述
我已经看了代码,但我看不到任何逃脱的功能像 the_title
the_content
the_excerpt
等我可能不会读正确。我需要在主题开发中逃避这些功能,如:
esc_html ( the_title () )
编辑:正如下面的答案所指出的,上面的代码是错的 – 代码应该有 esc_html ( get_the_title () )
最佳解决方案
转义完全取决于使用函数的上下文。在<h1>
标签中显示的内容是安全的,对于输入字段的 value
属性来说,并不一定是安全的,甚至不一定是 href
属性值的安全。
简而言之,您输出的时候自己执行消毒。虽然在 the_title ()
或 get_the_title ()
的情况下,esc_html
不是必需的,因为 WordPress 应用以下功能:
-
convert_chars
-
wptexturize
注意:the_title
打印标题 – 所以 esc_html ( the_title () )
将无法正常工作。类似地,the_content
打印内容 (在任何情况下,您期望内容显示 HTML) 。
次佳解决方案
是和否 – 取决于是否要在这些函数中输出 html 。例如,如果您逃避 the_content()
,并且它包含<div>
标签,则该标签实际上将以<div>
的形式输出到页面。
顺便说一下,如果您确实逃避了这些功能的输出,那么您将要使用它们的”get_” 等同物 (例如 get_the_content()
) 作为这些函数直接回显输出。
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。