我无法通过Apache Roller的Velocity模板语言找到如何获取当前页面的完整URL的方法。
到目前为止,我试过了:
$url.absoluteSite
- 这给出了网站的TLD,但没有路径。$url.site
- 什么也没给我(可能是因为Tomcat的虚拟主机设置)我尝试了滚动模板指南给出的各种方法的其他组合,但没有一个产生任何结果。
我不确定Roller是否安装了Velocity工具,我尝试了一些与LinkTool相关的StackOverflow示例,但似乎它没有用。
嗯,这就是它的简短 - 我只需要一行Velocity代码来获取Roller中当前的完整URL。
非常感谢大家!
答案 0 :(得分:0)
当然,Roller包含了Velocity,包括你可以利用的generic macros。此外,只需打开预先打包的主题,您就可以看到Roller如何使用Velocity生成许多URL。例如,Roller博客的主页是
$url.home
任何给定博客条目的固定链接
<a href="$url.entry($entry.anchor)">Permalink</a>
及其评论页面为:
<a href="$url.comments($entry.anchor)">Comments</a>
以上内容捕获了Roller产生的大多数页面,可能会照顾您的需求。我不确定你是否能够找到任意页面将呈现的URL的通用宏,因为这主要取决于模板的编写方式,而不是这些模板上使用的宏。
答案 1 :(得分:0)
只是在这里留下一些建设性的评论 - 出于某种原因(也许我的机器中有鬼)但是固定链接对我不起作用,但这样做:
<a href="$url.entry($model.weblogEntry.anchor)">Permalink</a>
...以及页面......
<a href="$url.page($model.weblogPage.link)">Permalink</a>
......我不知道为什么这些工作以及为什么你的例子(原始文件中也显示)也没有。
我没有对在类别浏览或搜索功能中创建URL进行任何调查,但我想它会遵循类似的模式。
无论如何,谢谢你的帮助,现在一切都好!