1

使用克隆 4.1.4。

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

就业容器中还有一个名为 foo 的附加页面

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

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

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

知道为什么它默认为父“文件夹”而不是当前实际所在的页面吗?是一些奇怪的缓存问题还是 url 重写巫毒?

4

3 回答 3

0

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

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

于 2012-04-11T08:01:27.043 回答
0

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

于 2012-04-11T04:17:34.720 回答
0

对于我在 Plone 4.3.3 中处理敏捷内容类型来说,这仍然是一个相关问题。

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

在看到 Cris 的回答后,我相信基本标签会根据内容的类型而改变,如果它是文件夹的话。然而导航链接(例如在portlet 导航树中)却没有。这限制了锚链的使用。

已经为此提交了一张票,解决方案似乎是在 plone 5.0 中完全删除基本标签。

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

<a tal:attributes="href string:${context/absolute_url}#anchor">My Anchor</a>
于 2014-08-07T07:39:27.060 回答