要让 bbPress 在用户上传或回复内容时自动过滤掉 (即非断行空格),你可以通过 bbp_get_reply_content 和 bbp_get_topic_content 过滤器来处理。以下是一个简洁实用的实现方式:
✅ 功能说明
✅ 推荐代码(添加到主题的
functions.php
)
// 过滤 bbPress 内容中的
function bbpress_remove_nbsp($content) {
// 移除所有 和其变体(大小写)
return preg_replace('/ |\xC2\xA0/i', ' ', $content);
}
// 应用于话题和回复内容显示
add_filter('bbp_get_reply_content', 'bbpress_remove_nbsp', 5);
add_filter('bbp_get_topic_content', 'bbpress_remove_nbsp', 5);
✅ 说明
-
是 HTML 中的非断行空格(No-Break Space),常因富文本编辑器(如 TinyMCE)或复制网页内容时混入;
-
\xC2\xA0 是其 UTF-8 编码形式,可防止乱码或漏删;
-
正则中将 替换成普通空格,避免影响用户排版。
✅ 效果演示前后:
原始输入:
✅ 功能说明
过滤后:
✅ 功能说明