Starting with version 1.2, etc_query
supports XSL stylesheets. An immediate benefice is the possibility to sort an XML document. In the example below we mix and rearrange by date <txp:article_custom />
and <txp:recent_comments />
lists:
<txp:etc_query
data='<dl>
<txp:article_custom>
<dt><txp:posted format="%Y-%m-%d" /></dt>
<dd>Published <txp:permlink><txp:title /></txp:permlink></dd>
</txp:article_custom>
<txp:recent_comments break="">
<dt><txp:comment_time format="%Y-%m-%d" /></dt>
<dd>Comment on <txp:comment_permlink><txp:title /></txp:comment_permlink> by <txp:comment_name /></dd>
</txp:recent_comments>
</dl>'
>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:txp="https://www.textpattern.com">
<xsl:output method="html" encoding="utf-8" omit-xml-declaration="yes" />
<xsl:template match="dl">
<h4>History</h4>
<dl>
<xsl:for-each select="dt">
<xsl:sort select="." order="descending" />
<xsl:if test="position() < 11">
<txp:if_different><xsl:copy-of select="." /></txp:if_different>
<xsl:copy-of select="following-sibling::dd[1]" />
</xsl:if>
</xsl:for-each>
</dl>
</xsl:template>
</xsl:stylesheet>
</txp:etc_query>
History (page 4)
- 2020-01-17
- Published Hamlet
- 2020-01-15
- Published There was a young man named Luke
- Published In a galaxy far far away
- Published Once upon a time
- Published A book
- 2019-05-05
- Comment on etc_tree by Ibadullah
- 2019-03-26
- Comment on etc_date by Oleg
- 2019-03-25
- Comment on etc_date by ibadullah
- 2019-02-07
- Published etc_attribute
- 2019-01-28
- Published etc_output_file
But what about pagination? Here it is:
File(s)
- File: etc_query.txt [60.72 kB] (4247 downloads, ~29 per month)
- File: etc_pagination.txt [43.19 kB] (1966 downloads, ~14 per month)