Пытаясь получить чистые URL-адреса для элементов списка в Reddot CMS

У нас есть следующий код, используемый для представления списка URL:

<reddot:cms>
                                                  <foreach itemname="childPages" object="Context:Indexes.GetIndexByPageId(Guid:021743AA8509473C9615A4BA5C2BAC32).SubIndexes" countername="pageCounter">
                                                    <htmltext><dd><a href="<%!! Store:childPages.GetUrl(Bool:True)  !!%>"><%!! Store:childPages.Headline !!%></a></dd></htmltext>
                                                  </foreach>
 </reddot:cms>

и хотите вернуть чистые URL от <%!! Store: childPages.GetUrl (Bool: True)!!%>, поэтому http://www.mysite.com/thispage.htm опубликовано как http://www.mysite.com/thispage Я пробовал:

 <reddot:cms>
                                                  <foreach itemname="childPages" object="Context:Indexes.GetIndexByPageId(Guid:4595E6AE30D243E6AB11DAE0553A90B7).SubIndexes" countername="pageCounter">
                                                    <htmltext><dd>
<%
 DocSectionURL = "<%!! Store:childPages.GetUrl(Bool:True)!!%>"
 DocNewSectionURL = Replace(DocSectionURL,".htm","")
%>
<a href="<% response.write(DocNewSectionURL) %>"><%!! Store:childPages.Headline !!%></a></dd></htmltext>
                                                  </foreach>
</reddot:cms>

но www.mysite.com/thispage.htm все еще возвращается. Может ли кто-нибудь помочь предложить лучший способ сделать это, пожалуйста? Мне удалось использовать аналогичный метод с заполнителями, но с этим RQL он не работает. Спасибо заранее.

1 ответ

Вы не можете сделать это в PreExecute или Rendertags. Окончательный URL-адрес создается после запуска RenderTags и PreExecute.

Либо вы можете опубликовать свои файлы без ".htm" в качестве расширения (просто вставьте "." В качестве расширения в настройках), либо настроить URL-адреса через PHP/ASP/ASPX/... на сервере доставки (Apache, IIS, DS, ...).

Бест, Хильмар Бунджес

Другие вопросы по тегам