Pregunta

Este código selecciona los nodos, quiero trabajar en ...:

<xsl:variable name="rootTextpageNode" 
     select="$currentPage/ancestor-or-self::node [@level = 2 and
             @nodeTypeAlias = 'CWS_Textpage']" />

¿Cómo puedo poner un orden / orden, para que los elementos con una nueva fecha de creación se muestren primero?

Estoy usando el kit de inicio de CWS y necesito cambiar el orden de los elementos que se muestran en SubNavi.xslt

¿Fue útil?

Solución

Puede hacer una ordenación en la primera línea después de un para cada uno, así:

<xsl:for-each select="$rootTextpageNode">
<xsl:sort select="@createDate" order="descending" />
    <xsl:value-of select="@nodeName" />
</xsl:for-each>

Otros consejos

No estoy seguro de si puede agregar la ordenación a esta asignación variable; normalmente, ordena cuando aplica una plantilla o cuando realiza un foreach:

<xsl:template match="employees">
    <xsl:apply-templates>
      <xsl:sort select="salary"/>
    </xsl:apply-templates>
  </xsl:template>

o

<xsl:for-each select="catalog/cd">
  <xsl:sort select="artist"/>
  <tr>
    <td><xsl:value-of select="title"/></td>
    <td><xsl:value-of select="artist"/></td>
  </tr>
</xsl:for-each>

Consulte Ordenar XSLT y Dónde colocar la información de clasificación

Marc

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top