У меня есть две функции:
GetHomeXml() -> returns a collection of pages with a custom meta type
SiteMapXml() -> standard sitemap xml
SiteMapXml () имеет свойство (isCurrent), которое возвращается, если страница является текущей страницей.Мне нужно определить, отображается ли имя страницы в GetHomeXml () и есть ли у узла в GetHomeXml () свойство Image.FileName, назначенное для него.
Я могу получить оба возвращаемых значения, но не могу понятьиз XSL для достижения этой цели.Вот что у меня есть:
<xsl:param name="currentPage" select="/in:inputs/in:result[@name='SitemapXml']/Page/@iscurrent" />
<xsl:for-each select="/in:inputs/in:result[@name='GetHomeXml']/Image">
<xsl:if test="@Image.PageTitle = $currentPage.Title">
<img src="@Image.FileName" />
</xsl:if>
</xsl:for-each>
Я создал пользовательскую запись метаданных и добавил в нее 3 поля {IsTab, Image, Color}.Я хочу определить, что если текущая страница содержит поле изображения и назначенный ему Page.Title, совпадает с текущей страницей, то для визуализации назначенного изображения (это поле ссылки на данные со свойством поиска изображения длякаталог изображений) в тег.
Но этот код, похоже, ничего не возвращает?
Обновление:
XML, возвращаемый для GetHomeXml() выглядит следующим образом:
<!-- Function Call Result (0 ms), XPath /in:inputs/in:result[@name='GetHomeXml']/IsTab -->
<in:result name="GetHomeXml">
<IsTab Id="9eba448e-9a30-478e-81b2-530bc7da2545" IsTab="true" BackgroundImg="MediaArchive:34f9be39-8273-4960-8cc6-e6b76f34e6ac" BackgroundImg.FileName="home-group-2.png" PageId.Title="Contact Us" xmlns=""/>
<IsTab Id="a46e2e98-ffcd-4675-8840-389d1a7f46ca" IsTab="true" PageId.Title="Welcome" xmlns=""/>
<IsTab Id="c76fa101-8c63-46e2-9431-e18ce875866d" IsTab="false" PageId.Title="What we do" xmlns=""/>
Я хочу получить имя изображения на основе текущей страницы (PageId.Title). Мне нужно сопоставить возвращенное значение, связанное с текущей страницей вSiteMapXml:
<!-- Function Call Result (0 ms), XPath /in:inputs/in:result[@name='SitemapXml']/Page -->
<in:result name="SitemapXml">
<Page Id="62c66cb6-b2ec-4469-b0d7-54bc61b22c20" Title="Home" MenuTitle="Home" UrlTitle="Home" Description="Default web site for... Please do not change any of the settings for this site. Add, modify and delete pages underneath this web site, but do no touch this site." ChangedDate="2011-12-04T22:36:33.2651194+02:00" ChangedBy="admin" URL="/Home/c1mode(unpublished)" Depth="1" xmlns="">
<Page Id="041c7d66-60cd-4098-ac98-728c0db111a1" Title="Welcome" MenuTitle="Welcome" UrlTitle="Welcome" Description="" ChangedDate="2011-12-04T22:38:06.2815949+02:00" ChangedBy="admin" URL="/Home/Welcome/c1mode(unpublished)" Depth="2"/>
<Page Id="8ae4d8a5-f4d9-43ed-85de-90b6d3a6f0b8" Title="Contact Us" MenuTitle="Contact Us" UrlTitle="Contact-Us" Description="" ChangedDate="2011-12-04T22:54:10.1503871+02:00" ChangedBy="admin" URL="/Home/Contact-Us/c1mode(unpublished)" isopen="true" iscurrent="true" Depth="2"/>
<Page Id="ed5560a4-140b-4851-ac19-5ddc6c66a770" Title="What we do" MenuTitle="What we do" UrlTitle="What-we-do" Description="" ChangedDate="2011-11-28T07:23:25.8851421+02:00" ChangedBy="admin" URL="/Home/What-we-do/c1mode(unpublished)" Depth="2"/>
</Page>
</in:result>
</in:result>