You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP中如何在HTML标记内正确输出 分隔多个CSS类?

问题原因

  •  是HTML的非断空格实体,浏览器会将它识别为特殊字符,不会作为CSS类名的分隔空格使用,因此两个类会被判定为同一个字符串,无法分开生效。
  • 原代码输出的class属性未添加双引号,不符合HTML语法规范,也容易触发解析异常。

修复后的代码

<?php
$post_tags = get_the_tags();

if ( $post_tags ) {
    foreach ( $post_tags as $tag ) {
        // 处理标签名生成合法的唯一CSS类,避免特殊字符破坏格式
        $unique_tag_class = sanitize_html_class( 'post-tags-' . $tag->name );
        // 用普通空格分隔公共类和唯一类,给class属性加标准双引号,同时做输出转义保证安全
        echo '<span class="post-tags ' . esc_attr( $unique_tag_class ) . '">' . esc_html( $tag->name ) . '</span>';
    }
}
?>

效果说明

修复后最终输出的HTML结构为:

<span class="post-tags post-tags-tag3">tag3</span>

浏览器可以正常识别post-tags公共类和post-tags-tag3唯一类,同时新增的转义、类名过滤逻辑也符合WordPress的代码安全规范,避免标签名含特殊字符时出现格式错误。

内容的提问来源于stack exchange,提问作者Pantson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 08:15:03