2013-12-16 3 views
0

Umbraco 4.7.2 사이트의 XSLT 비디오 플레이어 매크로를 다른 Umbraco 4.0 사이트로 복사했습니다.Umbraco XSLT 매크로 문제

매크로는 동일하지만 복사 된 매크로는 4.0에서 실행되지 않고 값을 보유하는 모든 매크로 매개 변수와 함께 HTML 또는 오류를 생성하지 않습니다.

두 버전 사이에 구문 차이가 있습니까? 아니면 실수입니까? XSLT는 제 모국어가 아닙니다. 나는 면도칼 녀석입니다.

누군가가 나를 문제로 지적 할 수 있습니까?

XSLT 코드 :

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE xsl:Stylesheet [ 
<!ENTITY nbsp "&#x00A0;"> 
]> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxml="urn:schemas-microsoft-com:xslt" xmlns:umbraco.library="urn:umbraco.library" version="1.0" exclude-result-prefixes="msxml umbraco.library"> 
    <xsl:output method="xml" omit-xml-declaration="yes"/> 
    <xsl:param name="currentPage"/> 
    <!-- set up vars --> 
    <xsl:variable name="vidToPlay" select="/macro/vidToPlay"/> 
    <xsl:variable name="previewImage" select="/macro/previewImage"/> 
    <!-- END set up vars --> 
    <xsl:template match="/"> 
    <!-- start writing XSLT --> 
    <xsl:if test="$vidToPlay != '' and $previewImage != '' "> 
     <xsl:variable name="showMe" select="umbraco.library:GetMedia($vidToPlay/node/@id, 0)/data [@alias = 'umbracoFile']"/> 
     <xsl:variable name="preview" select="umbraco.library:GetMedia($previewImage/node/@id, 0)/data [@alias = 'umbracoFile']"/> 
     <video controls="" poster="{$preview}"> 
     <source src="{$showMe}" type="video/mp4"/> 
     <object width="640" height="360" type="application/x-shockwave-flash" data="/media/12209/player.swf"> 
      <!-- Firefox uses the `data` attribute above, IE/Safari uses the param below --> 
      <param name="movie" value="/media/12209/player.swf"/> 
      <param name="flashvars" value="controlbar=over&amp;file={$showMe}"/> 
     </object> 
     </video> 
    </xsl:if> 
    </xsl:template> 
</xsl:stylesheet> 
+0

당신이 오류의 어떤 종류가 있습니까 :

<xsl:variable name="showMe" select="umbraco.library:GetMedia($vidToPlay/node/@id, 0)/data [@alias = 'umbracoFile']"/> <xsl:variable name="preview" select="umbraco.library:GetMedia($previewImage/node/@id, 0)/data [@alias = 'umbracoFile']"/> 

이 라인은 Umbraco 위키에서 GetMedia에

<xsl:variable name="showMe" select="umbraco.library:GetMedia($vidToPlay/node/@id, 0)/umbracoFile"/> <xsl:variable name="preview" select="umbraco.library:GetMedia($previewImage/node/@id, 0)/umbracoFile"/> 

더 많은 정보를 원하시면해야 하는가? 아니면 그냥 어떤 오류 및 출력이 표시되지 않습니다? – nrathaus

답변

관련 문제