我正在使用OpenCMS开发一个网站,并且在创建使用cms循环的文件的链接时出现问题:contentload:
<cms:contentload collector="allInFolder" param="faqs/|FaqFile" editable="false">
<b><a href="${opencms.filename}"><cms:contentshow element="Title" /></a></b><br />
</cms:contentload>
这是index.jsp文件的一部分。不幸的是,所有链接都导致index.jsp而不是单个FAQ文件。你知道怎么改变它,以便按预期工作吗?
谢谢, 约翰
答案 0 :(得分:3)
这实际上是一种更好(现在推荐)的方式:
<cms:contentload collector="allInFolder" param="faqs/|FaqFile" editable="false">
<cms:contentaccess var="faqfiles" />
<b><a href="<cms:link>${faqfiles.filename}</cms:link>"><c:out value="${faqfiles.value['Title']}" /></a></b><br />
</cms:contentload>
答案 1 :(得分:0)
最后,我通过将链接更改为:
来解决问题<a href="<cms:link><cms:contentshow element="%(opencms.filename)" /></cms:link>">
现在正在运作。
答案 2 :(得分:0)
在Opencms中,如果要链接到任何资源,必须通过 cms:link 标记将其包围:
<cms:link>resource path</cms:link>
您也可以通过OpenCms API执行此操作:
<jsp:useBean id="cms" class="org.opencms.jsp.CmsJspActionElement">
<% cms.init(pageContext, request, response); %>
</jsp:useBean>
<% **String link = cms.link(resource path)** %>