2010-11-23 8 views
0

Ich hosten zwei Websites in einer einzigen Sitecore-Umgebung. Ich habe geändert web.config so dassSitecore, zu lange Artikel-URL, mehrere Websites

<site hostName="subdomain1.domain.com" startItem="/home" ... /> 
<site hostName="subdomain2.domain.com" startItem="/SecondSite/Homepage" ... /> 

Das Problem ist, dass die Menü-Links I in Xslt Rendering erzeugen mit sc: (.) ​​Pfade sind zu lang.

http://subdomain2.domain.nl/sitecore/content/SecondSite/CaptivatingPage.aspx 

möchte ich die Links sehen aus wie

http://subdomain2.domain.nl/CaptivatingPage.aspx 

Bitte, geben Sie mir einen Hinweis.

Antwort

2

Der wahre Stamm der Site ist SiteRoot + StartItem, also in Ihrem Fall ist es /sitecore/content/SecondSIte/Homepage. Die Seite, auf die Sie in Ihrem XSL-Rendering eine Verknüpfung erstellen, befindet sich nicht im Stammverzeichnis der Website - es ist dieselbe Ebene wie die Homepage.

sc:path(.) sollten Ihnen einen freundlichen Link geben, und für jede Seite unter der Homepage wird es http://subdomain2.domain.nl/EachPage.aspx sein, aber für die Elemente außerhalb der Wurzel wird es mit dem vollständigen Pfad verketten: /sitecore/content/blabla...

Also, versuchen Sie sich zu bewegen CaptivatingPage unter der Homepage, und Sie bekommen, was Sie erwarten.

0

Nicht sicher von der CMS-Version, die Sie verwenden, aber in der web.config, sehen Sie, ob es ein linkManager-Element gibt. Wenn ja, versuchen Sie, das Attribut shortUrls = true zu definieren.

Eine weitere Option besteht darin, eine xslt-Erweiterungsfunktion zu erstellen, die die Pfadmethode überschreibt und Ihre eigene UrlOptions-Logik angibt.

Verwandte Themen