Question

Ce code sélectionne les nœuds sur lesquels je souhaite travailler ...:

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

Comment puis-je mettre un tri / un ordre dedans, de sorte que les articles avec les plus récents createdDate soient affichés en premier?

J'utilise le kit de démarrage CWS et je dois modifier l'ordre des éléments affichés dans SubNavi.xslt

.
Était-ce utile?

La solution

Vous pouvez faire un tri dans la première ligne après un for-each, comme suit:

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

Autres conseils

Vous ne savez pas si vous pouvez ajouter un tri à cette affectation de variable - en règle générale, vous triez lorsque vous appliquez un modèle ou lorsque vous effectuez un foreach:

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

ou

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

Voir Tri de XSLT et Où placer les informations de tri

Marc

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top