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

如何扩展Sitecore富文本字段的「Is valid Xhtml」验证器?

Sitecore富文本字段「Is valid Xhtml」验证器兼容自定义HTML属性方案

Sitecore富文本字段自带的「Is valid Xhtml」验证器存在局限性:无法识别role、aria-*、data-*这类合法的HTML属性,导致内容编辑时触发不必要的验证错误。

「Is valid Xhtml」验证器问题

常见解决方案的弊端:

  • 直接禁用验证器:失去对富文本内容的HTML合法性管控,大幅增加内容作者输入非法代码的风险
  • 修改Sitecore核心文件:会破坏系统的升级兼容性,后续版本迭代时需要重复修改核心文件,维护成本极高

推荐的无侵入式解决方案思路:
通过重写Sitecore的XHTML验证逻辑,扩展允许的属性集合,既保留验证器的合规检查能力,又兼容无障碍属性和自定义数据属性,具体步骤如下:

  1. 创建自定义验证类,继承自Sitecore.Shell.Controls.RichTextEditor.Validators.XhtmlValidator
  2. 在重写的Validate方法中,扩展允许的HTML属性列表,明确加入role属性,以及所有以aria-、data-为前缀的属性
  3. 通过Sitecore配置文件替换默认验证器节点,将自定义验证类注册为富文本字段的默认验证器

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 12:47:04