SharePoint 2013页面添加itemprop微标记遇SharePoint Designer删除问题求助
我来帮你搞定这个头疼的问题!你遇到的情况是因为SharePoint Designer默认强制兼容IE6.0,而itemprop属于HTML5的微数据属性,会被它当成“不安全内容”给删掉。下面给你几个可行的解决方案,按需选择:
方案一:修改SharePoint Designer的兼容性检查设置(优先推荐,如果你能操作的话)
虽然你说自己无法完成,但可以再试试这些步骤,说不定是之前操作没到位:
- 打开SharePoint Designer,点击顶部菜单栏的工具 → 选项
- 在弹出的窗口里切换到兼容性标签页
- 把「兼容级别」从「Internet Explorer 6.0」改成「Internet Explorer 10.0」或者更高(比如Edge模式)
- 同时可以取消勾选「保存时验证HTML」,或者点击「验证设置」,在里面允许HTML5的属性规则
- 确定后再去添加itemprop微标记,保存时应该就不会被拦截删除了
方案二:用Web部件绕过SPD的编辑限制(适合没有SPD设置权限的情况)
如果改不了SPD的兼容性设置,就换个方式添加微标记:
- 打开需要修改的资讯页面,进入编辑模式
- 在页面合适的位置添加一个脚本编辑器Web部件(如果是旧版SP也可以用内容编辑器Web部件)
- 点击Web部件的「编辑HTML源」,粘贴包含itemprop的代码,比如:
<div itemscope itemtype="https://schema.org/Article"> <h2 itemprop="headline">[这里替换成资讯标题]</h2> <p itemprop="description">[这里替换成资讯内容摘要]</p> <time itemprop="datePublished" datetime="2024-05-20">[发布日期]</time> </div>
- 保存页面并发布,这样微标记会被完整保留,因为Web部件的内容不会经过SPD的严格HTML验证
方案三:通过后台/自定义字段注入(适合有开发权限的场景)
如果上面两种都不行,还可以从后台层面解决:
- 创建自定义字段,在字段的渲染模板(比如ASCX文件)里直接加入itemprop属性,这样所有使用该字段的页面都会自动带上微标记
- 或者用PowerShell脚本批量修改页面的HTML结构,批量注入itemprop,完全不需要通过SPD编辑页面
注意事项
- 不管用哪种方法,修改前最好先备份页面,避免出现布局错乱或者内容丢失的问题
- 如果是发布型页面,记得修改后要发布才能在前台看到效果
- 用Web部件添加时,要确保代码里的元素和页面原有布局适配,别影响美观
内容的提问来源于stack exchange,提问作者Egor
相关产品推荐
相关产品推荐

