出于安全原因,我们当然需要使用esc_html__() 用于WP开发。这很烦人,因为如果要在字符串中传递一个引号,就必须使用sprintf() 让它发挥作用。否则你就会'
打印出来,而不是\'
.
不使用sprintf():
esc_html__( \'Wasn\\\'t your favorite color red?\', \'domain\' );
// Output: Wasn't your favorite color red?
esc_html__( \'Provided reason isn\\\'t selected\', \'domain\' );
// Output: Provided reason isn't selected
使用sprintf() 我可以使用单引号(当然)。sprintf( esc_html__( \'Wasn%st your favorite color red?\', \'domain\' ), \'\\\'\' );
// Output: Wasn\'t your favorite color red?
sprintf( esc_html__( \'Provided reason isn%st selected\', \'domain\' ), \'\\\'\' );
// Output: Provided reason isn\'t selected
我想知道是否有不同的方法来实现相同的输出。恐怕没有,但我想为什么不试一试,谁知道呢。