在AEM富文本编辑器链接中将属性添加到锚点

在AEM富文本编辑器链接中将属性添加到锚点,aem,rich-text-editor,Aem,Rich Text Editor,我正在努力使我的客户的AEM网站之一可访问。同样,当选择的目标是“新建选项卡”时,我希望在锚定标记中添加“aria标签”属性(可以在创作对话中提供值)。 找不到太多,下面的链接描述了我们可以自定义rtePlugin/linkPicker。但是我没能解决我的问题。有什么帮助/指导吗 选项1)重用otb锚链接中的Alt文本。不需要自定义对话框。当编写Alt Text时,otb将像这样填充标题 , 然后需要编写一个脚本,将标题复制到aria标签中。重写器将查找锚定标记;如果存在标题,请复制到新的属性a

我正在努力使我的客户的AEM网站之一可访问。同样,当选择的目标是“新建选项卡”时,我希望在锚定标记中添加“aria标签”属性(可以在创作对话中提供值)。 找不到太多,下面的链接描述了我们可以自定义rtePlugin/linkPicker。但是我没能解决我的问题。有什么帮助/指导吗

选项1)重用otb锚链接中的
Alt文本。不需要自定义对话框。当编写
Alt Text
时,otb将像这样填充标题

,

然后需要编写一个脚本,将标题复制到aria标签中。重写器将查找锚定标记;如果存在标题,请复制到新的属性aria标签中并重写锚定。如果链接重写器很困难,您也可以在保存rte文本的同时从吊索模型重写rte文本。使用解析HTML,通过将标题复制到aria标签进行重写,然后写回JCR


选项2)将aria标签的新文本框添加到对话框。你可以参考这个。但只有当
Alt text
与aria标签不同时才需要此选项,我想知道为什么。通常,aria标签和标题是相同的,上面的选项1就足够了

因此,通过一些疑难解答,终于能够添加aria标签属性。此外,上述链接中的步骤是相同的。想添加我面临的问题的其他细节吗

  • 添加新字段
    按照中提到的步骤进行操作
  • 在添加博客中提到的字段后,新添加的属性将被AEM过滤。您将在error.log文件中看到以下错误

    错误:“26.09.2017 12:40:42.804信息[0:0:0:0:0:0:0:1[1506447642680]GET/content/we retail/language masters/en.html HTTP/1.1]org.apache.sling.xss.impl.htmltohtmlcontentcontentcontent反艾米警告:a标记包含我们无法处理的属性。rel属性的值为“bookmark”“。出于安全原因,无法接受此值。我们已选择从标记中删除此属性,并保留所有其他内容,以便处理输入。”

    解决方案:在CRXDE Light中声明反艾米配置文件中的属性。 注意:在/apps/cq/xssprotection/config.xml(覆盖/libs/cq/xssprotection/config.xml)中对Sightly/HTL-its/libs/sling/xss/config.xml进行以下更改

  • 将/libs/cq/xssprotection/config.xml复制到/apps/cq/xssprotection/config.xml

  • 打开/apps/cq/xssprotection/config.xml。 在公共属性部分,添加以下目标属性声明


    到目前为止您尝试了什么?事实上,您很可能必须创建/覆盖默认链接插件。@ronnyfm-这是我为AEM做的第一个项目,在网上找不到满足我要求的选项。因此,到目前为止,我还没有尝试过任何东西,请在此寻求指导谢谢您的指导,我能够添加aria标签下面我想做的另一件事是,我只想在target=“New Tab”有任何建议时添加它?@Pradeep,-这个博客比颜色选择器示例更符合您的要求。如果您可以类似于上面的示例重新实现,您可以在dlgToModel()中添加条件函数。它是在对话框写入JCR之前调用的,所以只有在满足条件时才将aria标签保存到JCR。另一种方法是在不需要时使用LinkTransformer删除属性。