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

WordPress用Classic Editor切换TinyMCE标签丢失<br><p>标签如何解决?

解决方案配置步骤

配置前注意事项

  • 修改前请完整备份网站主题文件、数据库,避免操作失误导致站点异常
  • 以下代码均添加到当前启用主题的functions.php文件末尾,或自定义代码片段插件的代码编辑区

核心配置代码

该配置通过修改TinyMCE编辑器的初始化参数,禁用自动格式化、自动清理标签的规则,实现手动添加的<p>、<br>标签保留:

// 保留TinyMCE编辑器中的手动p、br标签
add_filter('tiny_mce_before_init', 'custom_tinymce_preserve_tags');
function custom_tinymce_preserve_tags($init) {
    // 禁止自动移除空标签
    $init['remove_empty'] = false;
    // 禁用编辑器自带的自动换行转换
    $init['wpautop'] = false;
    // 取消默认的根块标签自动包裹
    $init['forced_root_block'] = false;
    // 明确指定p、br为不受清理的合法标签
    $init['extended_valid_elements'] = 'p[*],br[*]';
    // 禁止自动清理换行符
    $init['remove_linebreaks'] = false;
    $init['convert_newlines_to_brs'] = false;
    return $init;
}

// 禁用前端输出的自动换行格式化,保持前后端展示一致
remove_filter('the_content', 'wpautop');
remove_filter('the_excerpt', 'wpautop');

配置验证步骤

  • 添加代码后清空网站缓存、浏览器缓存
  • 进入文章编辑页,在「文本」标签页手动添加<br>、<p>标签
  • 切换到「可视化」标签页再切回「文本」标签页,确认标签不会被自动删除
  • 发布文章后查看前端展示,确认标签效果符合预期

特殊情况处理

如果配置后问题仍存在,按以下步骤排查:

  • 临时禁用其他编辑器扩展、内容格式化类插件,排查插件冲突
  • 确认修改的是当前正在启用的主题的functions.php文件;若主题存在定期升级的情况,可将代码放到自定义功能插件中避免升级被覆盖

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 12:06:03