2009-05-22 10 views
0

J'ai créé une macro pour mon menu sur la gauche et c'est ok.macros umbraco dans le menu

Je veux utiliser les mêmes macros pour le menu vers la droite sans en créer une autre.

Que dois-je faire?

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE xsl:Stylesheet [ <!ENTITY nbsp "&#x00A0;"> ]> 
<xsl:stylesheet 
    version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:msxml="urn:schemas-microsoft-com:xslt" 
    xmlns:umbraco.library="urn:umbraco.library" 
    exclude-result-prefixes="msxml umbraco.library"> 

<xsl:output method="xml" omit-xml-declaration="yes" /> 

<xsl:param name="currentPage"/> 

<xsl:template match="/"> 

    <xsl:call-template name="drawNodes"> 
    </xsl:call-template> 

</xsl:template> 

<xsl:template name="drawNodes">  
    <ul>  
    <xsl:for-each select="$currentPage/ancestor-or-self::root/node [string(data[@alias='posizione_menu']) = 'left']"> 

     <xsl:choose> 
     <xsl:when test="$currentPage/ancestor-or-self::node/@id = current()/@id"> 
      <li><xsl:value-of select="@nodeName"/></li> 
     </xsl:when> 
     <xsl:otherwise> 
      <li> 
      <a href="{umbraco.library:NiceUrl(@id)}" title="Accedi a {@nodeName}"> 
       <xsl:text disable-output-escaping="yes"><![CDATA[&laquo;]]> </xsl:text> 
       <xsl:value-of select="@nodeName"/> 
      </a> 
      </li> 
     </xsl:otherwise> 
     </xsl:choose> 
    </xsl:for-each> 

    </ul> 

</xsl:template> 
</xsl:stylesheet> 
+0

Quelle langue, quelle plate-forme, s'il vous plaît entrer dans plus de détails. –

+0

Afficher le code de ce que vous faites. – fARcRY

+0

    < xsl: when test = "$ currentPage/ancêtre ou self :: node/@ id = courant()/@ id">
  • < xsl: otherwise>

Répondre

0

Si vous souhaitez réutiliser une macro, vous pouvez facilement le faire en insérant dans le masterpage .NET où vous souhaitez réutiliser.

Si vous souhaitez utiliser un balisage XHTML différent selon qu'il est à gauche ou à droite, veuillez me le faire savoir afin que je puisse vous aider.

Warren :)