Перебор файлов - OpenCMS

Я разрабатываю веб-сайт с помощью 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, а не на отдельные файлы часто задаваемых вопросов. Знаете ли вы, как изменить это, чтобы оно работало должным образом?

Спасибо, Джон


person John Manak    schedule 19.03.2010    source источник


Ответы (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>
person John Manak    schedule 22.03.2010

В конце концов я решил проблему, изменив ссылку на:

<a href="<cms:link><cms:contentshow element="%(opencms.filename)" /></cms:link>">

Теперь это работает.

person John Manak    schedule 19.03.2010

В 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)** %>
person spekdrum    schedule 17.01.2013