AEM RTE标准超链接插件上调度缓存没有得到缩短在同一行第二,第三链接

问题描述 投票:0回答:1

在AEM使用标准RTE插件的超链接功能,当有这个问题Issue image I'm。

点击的<ahref>链接正常工作,它的路线我一个正确的缩短的URL(/usa-en/delete/smart-factory.html)如预期。

然而徘徊生成的标记的链接,或查看源代码上好像一个问题,即链路显示了绝对路径(/内容/ TE-COM / USA / EN /页/ ...。),这是影响我们的SEO。

实际上只有第一个链接是越来越缩短,所有其它链接显示的绝对路径(/内容/ TE-COM / ...路径),当我将鼠标悬停在链接。我怀疑缓存链接与路径的问题越来越缩短。

节点存储在JCR:

<p>Hello <a href="/content/te-com/usa/en/pages/delete/smart-factory.html">one</a> and <a href="/content/te-com/usa/en/pages/delete/pgp-test0.html">two</a>.&nbsp;</p>

从源代码生成的HTML标记:

<div class="global-rte-std-bold global-labels parbase section"><p>Hello <a href="/usa-en/delete/smart-factory.html">one</a> and <a href="/content/te-com/usa/en/pages/delete/pgp-test0.html">two</a>.&nbsp;</p>

然而,当我加Shift + Enter使用RTE一个时 标签,并将该网址不知何故被缩短像预期的那样显示在下面的标记中的所有链接。节点存储仍如上述一样的一个没有移+输入相同的

标记生成(观察到的URL被缩短):<div class="global-rte-std-bold global-labels parbase section"><p>Hello <a href="/usa-en/delete/smart-factory.html">one</a> and<br><a href="/usa-en/delete/pgp-test0.html">two</a>.&nbsp;</p>

此外,我们在阿帕奇以下重写规则,当我点击链接,实际上生效。我怀疑缓存的URL与RTE有这个问题。

重写规则^ /?/?(.*)$在使用/内容/ TE-COM / USA / EN /页/ $ 1 [PT,QSA]。

注意:我们尚未定制RTE插件,它是一个标准的超链接的插件,我们一直在使用上AEM 6.2

这里使用的代码是一个简单的

我不知道它是如何工作正确用Shift + Enter,而不是当我有在同一行中的链接。

任何帮助,将不胜感激。谢谢

aem cq5 aem-6
1个回答
0
投票

当你与RTE编辑链接内部页/资产则缩短URL不起作用。我遇到了同样的情况,为此我不得不编写自定义吊带重写改造链接,以便resourceResolver.map(路径)工作正常。

 @Override
public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException {
   int hrefIndex = atts.getIndex("href");
    String href = atts.getValue("href");
  atts.setValue(hrefIndex, resolver.map(href));
}
© www.soinside.com 2019 - 2024. All rights reserved.