关于内容的WordPress esc_html

时间:2016-09-16 12:04:37

标签: php wordpress security

我有这段代码:

the_content( sprintf(
                __( 'Continue reading %s', 'twentyfifteen' ),
                the_title( '<span class="screen-reader-text">', '</span>', false )
            ) );

如何逃避上面的代码以解决安全问题?我一直在使用下面的代码来解决问题:

<?php echo esc_html(get_the_title()) ; ?>

2 个答案:

答案 0 :(得分:0)

the_title()the_excerpt()the_content()未转义(the_content()会更换一些字符串)这可能会导致安全问题,例如当编辑器安装了恶意浏览器时扩展。

正确的方法是将这些函数的get_*版本包装到esc_html_e()(运行esc_html(),翻译文本域,并回显结果),所以在你的情况下:< / p>

<?php esc_html_e(get_the_content($more_link_text, $strip_teaser)); ?>

答案 1 :(得分:-1)

来自WP Codex

  

重要的是要注意大多数WordPress函数正确地为输出准备数据,并且您不需要再次转义。

因此,对于此函数,您不必再次转义the_title(),因为此函数已经单独执行。

对于所有其他逃避/消毒需求,请查看here