我们使用以下代码来显示网址列表:
<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>
并希望从&lt;%!!返回干净的网址商店:childPages.GetUrl(Bool:True)!!%&gt;因此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它不起作用。 非常感谢提前。
答案 0 :(得分:1)
你不能在PreExecute或Rendertags中执行此操作。在运行RenderTags和PreExecute之后创建最终URL。
您可以发布没有“.htm”作为扩展名的文件(只需在设置中插入“。”作为扩展名),或者在交付服务器上通过PHP / ASP / ASPX / ...调整URL(Apache) ,IIS,DS,...)。
最佳, Hilmar Bunjes