Plone中奇怪的锚标记/相对路径问题

时间:2012-04-11 00:29:34

标签: plone

使用Plone 4.1.4。

有一个名为/ employment的容器,它有一个页面的默认视图,也叫做就业。

在就业容器中有一个名为foo

的附加页面

当我添加锚标签时(通过TinyMCE或直接html),它会“自动”链接到父文件夹而不是当前页面。

我在http://www.example.com/employment/foo 我尝试在foo页面上添加一个链接<a href="#bar">

我希望渲染时链接为http://www.example.com/employment/foo#bar 相反,它显示为http://www.example.com/employment/#bar

知道为什么它默认为父“文件夹”而不是其当前实际所在的页面?是一些奇怪的缓存问题还是网址重写伏都教?

3 个答案:

答案 0 :(得分:0)

您是否在TinyMCE的设置中启用了“使用UID链接”? UID链接启用URL重写过滤器,该过滤器将所有相对链接解析为绝对链接。 Id存在相关链接问题,但应在 plone.outputfilters&gt; = 1.2 中修复(例如,它不再尝试“修复”锚链接)。

答案 1 :(得分:0)

你可能会成为这里基础标签的受害者。浏览器使用基本标记来确定相对链接的参考点。如果基本标记表明基本URL是您的容器,那么您创建的相对链接将最终相对于该链接呈现。

检查渲染页面头部的base值,看是否是这种情况。

答案 2 :(得分:0)

对于我在Plone 4.3.3中使用灵巧内容类型,这仍然是一个相关的问题。

首先,当我创建非文件夹内容类型时,锚链接正常工作。但是在我将其转换为文件夹容器类型后,锚链接行为发生了变化。

在看到Cris的答案之后,我相信如果内容类型是基于文件夹的话,基本标签会根据内容的类型而变化。然而,导航链接(例如,在portlet导航树中)并非如此。这会限制锚链接的使用。

A ticket已经提交了相关内容,决议似乎是在plone 5.0中完全删除基本标记。

对于plone 4.3.3。我只能想到在我的文件夹内容类型模板中使用绝对网址作为锚链接。

<a tal:attributes="href string:${context/absolute_url}#anchor">My Anchor</a>