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
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