在你的代码中没有什么可以逃避的。
假设给定的函数只返回纯文本,不允许使用HTML实体。例如,您希望显示搜索查询字符串。
在这种情况下,您应该使用esc_html
.
这样,如果用户将<b>ala</b>
作为搜索字符串,您的站点将准确打印该字符串。
如果您在打印之前不转义该字符串,它将被视为HTML代码,您将看到粗体字ala
只有
但是您必须根据上下文使用适当的函数进行转义。
因此:
<h1>You’re looking for: <?php echo esc_html( get_query_var( \'s\' ) ); ?></h1>
但是:
<input name="s" value="<?php echo esc_arg( get_query_var( \'s\' ) ); ?>"/>
那么,让我们回到您的代码。。。
get_the_password_form()
应该显示HTML标记,并且它们应该被浏览器作为HTML代码处理-所以您不能逃避它。如果您愿意,您将看到一个包含HTML标记而不是表单的字符串。