织梦纯文本粘贴模式开启方法

纯文本粘贴的作用

纯文本粘贴(Paste as Plain Text)是 ckeditor 提供的一种工作模式,开启后编辑器粘贴任何来源的内容(Word、Excel、其他网页)时都会先丢弃所有 HTML 标签和样式,只保留可见文字与换行符。对于织梦 DedeCMS 这类以文章为主体的站点来说,开启纯文本粘贴可以从源头避免 mso 样式污染、inline style 撑破响应式模板等顽疾。

原因分析

为什么默认没开

织梦自带 ckeditor 默认配置偏向"所见即所得",希望编辑器保留用户复制的格式,方便排版。但实际场景中,绝大多数内容来自 Word 或第三方网页,保留的格式反而与前台模板冲突。

两种模式差异

纯文本模式下,<p><br> 之外的所有标签都会被剔除;而"过滤粘贴"模式只剔除禁用标签,保留允许的语义标签。两者对应不同的使用场景。

开启步骤

方法一:在工具栏加 PasteText 按钮

打开 /dede/templets/article_add.htmarticle_edit.htm,在 CKEDITOR.replace('body', {toolbar:[...]}) 中加入 PasteText 工具项:

CKEDITOR.replace('body', {
    toolbar : [
        ['Source','Templates','Cut','Copy','Paste','PasteText','PasteFromWord','-','Print','SpellChecker'],
        ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
        ['Bold','Italic','Underline','Strike'],
        ['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
        ['JustifyLeft','JustifyCenter','JustifyRight'],
        ['Link','Unlink','Anchor','Image','Flash','Table','SpecialChar']
    ]
});

开启后工具栏会出现一个"纯文本粘贴"按钮,编辑点击它再 Ctrl+V 即可触发纯文本粘贴。

方法二:全局强制纯文本

打开 /include/ckeditor/config.js,加入:

CKEDITOR.editorConfig=function( config ) {
    config.forcePasteAsPlainText=true;
    config.pasteFilter='plain-text';
    // 同时关闭 pastefromword 插件,避免被 Word 样式覆盖
    config.removePlugins='pastefromword';
};

这样所有编辑器实例在 Ctrl+V 时都会自动走纯文本通道,无需手动点按钮。

方法三:替换为 UEditor 的开启方式

若站点已把编辑器换成百度 UEditor,需要在 ueditor.config.js 中设置:

,pasteplain:true          //默认纯文本粘贴
,retainOnlyLabelPasted:true //仅保留标签
,filterTxtRules : function(){
    return {
        whiteList:{ p:{} },  //仅允许 p 标签
        blackList:{ style:1,span:1,font:1,div:1 }
    };
}

配置示例

推荐做法:方法一与方法二组合使用。先在 config.js 全局强制纯文本,再在工具栏保留 PasteText 按钮,方便偶尔需要粘贴富文本时临时切换。

注意事项

  • 开启纯文本粘贴后,从 Word 复制图片会失效,编辑需走"上传图片"流程。
  • 表格内容会丢失,如果业务依赖表格粘贴,建议改为"过滤粘贴"模式而非"纯文本"。
  • 修改 config.js 后务必强制刷新浏览器(Ctrl+F5),ckeditor 缓存极重。
  • 部分定制版 DedeCMS 把 ckeditor 路径改为 /include/ckeditor_xxx/,需对应修改。
  • 纯文本模式下换行处理依赖浏览器,建议在粘贴后用"格式化"按钮统一一次。

实施建议

开启纯文本粘贴是织梦内容卫生化的第一步。建议在上线后给编辑团队写一份简短操作手册:复制 Word 内容 → 切换到纯文本按钮粘贴 → 用工具栏重新套用标题、加粗、列表 → 插入图片走上传。短期会让编辑多两步操作,但长期将明显减少样式错乱、移动端字号线粗异常的投诉,让站点内容质量更稳定。