实际使用esc_html
不会有帮助,因为它将转义任何html字符,因此您必须依赖wp_kses
因此,您可以指定接受的标记和属性,因此无需转义输出。但您必须避开DB中的值,在您的情况下$average_rating
. 所以你可以这样。
$accepted_tags = array(\'strong\'=>array());
$reviews_label = wp_kses(
sprintf(
__( \'%s / %d\', \'<strong>woocommerce-product-reviews-pro</strong>\' ),
esc_html($average_rating),
5
),
$accepted_tags );
<h3><?php echo $reviews_label ; ?></h3>
更新
正如我从您的评论中看到的,您需要将标记添加到%s
, 所以你只需要改变$accepted_tags
收件人:
$accepted_tags = array(\'span\'=>array());
anf的
sprintf
收件人:
sprintf(
__( \'<span>%s</span> / %d\', \'woocommerce-product-reviews-pro\' ),
esc_html($average_rating),
5
),