Пытаясь получить чистые 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, ...).
Бест, Хильмар Бунджес