如何在此php代码示例中放置html粗体标记?

时间:2019-05-30 14:57:24

标签: php html wordpress escaping

我需要以粗体显示“ Located:”一词,但无法弄清楚标签的放置位置,因此它们既不会打印也不会破坏代码。

在此处阅读其他主题,将粗体标签放在“位置:”周围,但它们只是打印出来。尝试移动标签,但会破坏代码。

/* translators: used between list items, there is a space after the comma 
*/
$tags_list = get_the_tag_list( '', esc_html__( ', ', 'vogue' ) );
if ( $tags_list ) {
    printf( '<br /><br /><span class="tags-links">' . esc_html__( '<b>Located:</b> %1$s', 'vogue' ) . '</span>', $tags_list ); // WPCS: XSS OK
}

2 个答案:

答案 0 :(得分:1)

esc_html将转义您提供的任何HTML,因此不要放入HTML。足够简单!您使用的是esc_html__,而不仅仅是esc_html,因此我认为本地化对您很重要。

$tags_list = get_the_tag_list( '', esc_html__( ', ', 'vogue' ) );
if ( $tags_list ) {
    printf(
        '<br /><br /><span class="tags-links"><b>%s</b>%s</span>',
        __( 'Located:', 'vogue' ),
        $tags_list
    );
}

printf将用参数的字符串表示形式替换每个%s,因此我所做的只是将“ Located:”的翻译移到单独的参数中。我不确定您要使用%1$s做什么,所以我将其取出并替换为标准的%s

答案 1 :(得分:0)

if ($tags_list ) {
    printf(
        '<br /><br /><span class="tags-links"><b>Located:</b> ' . esc_html__('%1$s', 'vogue' ) . '</span>',
        $tags_list
    ); // WPCS: XSS OK
}