我是Umbraco的新人。我在使用XSLT文件绑定图像时遇到问题这里是我的XSLT文件。我正在使用Umbraco 6.1.6
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:param name="currentPage"/>
<xsl:variable name="minLevel" select="2"/>
<xsl:template match="/">
<xsl:for-each select="$currentPage">
<div class="divHouseEmployeeList">
<img src="{concat('..', ./employeePhoto)}" />
<!--<img src="{./employeePhoto}" alt="{./employeeName}" />
<img src="{concat('..',./employeePhoto)}" alt="{./employeeName}" />-->
<xsl:value-of select="concat('..', ./employeePhoto)"/>
<xsl:for-each select="$currentPage/ancestor::* [@level > $minLevel]">
<xsl:if test="./houseSymbol != '' ">
<img src="{concat('..',substring-before(./houseSymbol,'.'), '_thumb.jpg')}" alt="" class="staticImageStyle" />
</xsl:if>
</xsl:for-each>
</div>
</xsl:for-each>
</xsl:template>
这里我绑定了当前页面的细节和其上一页的详细信息之一。 XSLT文件保存成功但是当我配置了IIS图像时没有显示Check out snap下面显示了Firebug中的错误
URL : http://localhost/WebPortalUmb/houses/trident/csah.aspx
正如您在Snap中看到的那样,房屋是模板名称,而WebPortalUmb是IIS中的应用程序名称。
此外,您可以看到加载主页时,我从Firebug注意到的应用程序名称丢失了。查看主页下方的Snap。
URL : http://localhost/WebPortalUmb/home.aspx
我是umbraco的新手所以请帮忙。我还绑定了URL,以便您可以理解问题。如果您对问题有任何疑问,请发表评论。
答案 0 :(得分:1)
获取媒体图像已有详细记录(http://our.umbraco.org/wiki/reference/umbracolibrary/getmedia),因此将它们从xslt中渲染出来非常简单。
如果您正在使用Umbraco 6.1.6,那么我假设您正在使用MVC - 如果是这样的话,所有被抛出的404都可能正在发生,因为您的mvc路由没有在您期望的层次结构中设置您的相对位置。 / p>
只有将脚本放在名为houses的文件夹(您说是模板(控制器???))下时,您的/ house / scripts引用才有效。我猜两件事会让你进入一个更好的地方。
首先将所有脚本引用更改为具有前导斜杠即/ WebPortalUmb / scripts - 这将强制脚本转到正确的位置,而不管调用页面/视图/的任何绝对/相对位置。
其次将一些调试断点放入路由表(例如/App_Start/RouteConfig.cs),以便您可以看到每次都会遇到哪个控制器操作(setting custom path in routeconfig.cs in mvc 4)