diff options
Diffstat (limited to 'source/02_meta/categories.xsl')
-rw-r--r-- | source/02_meta/categories.xsl | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/source/02_meta/categories.xsl b/source/02_meta/categories.xsl index 1a06aa1..ea8593b 100644 --- a/source/02_meta/categories.xsl +++ b/source/02_meta/categories.xsl @@ -15,17 +15,13 @@ <target mode="plain" value="categories.xml"/> </xsl:variable> -<xsl:template name="get_page_data"> - <xsl:param name="handle"/> - - <xsl:variable name="page" select="$root/pages/entry[@handle = $handle]"/> - - <page handle="{$handle}"> +<xsl:template match="pages/entry" mode="resolve"> + <page handle="{@handle}"> <title> - <xsl:value-of select="$page/title"/> + <xsl:value-of select="title"/> </title> - <digest size="{string-length($page/content/p[1])}"> - <xsl:copy-of select="$page/content/p[1]/node()"/> + <digest size="{string-length(content/p[1])}"> + <xsl:copy-of select="content/p[1]/node()"/> </digest> </page> </xsl:template> @@ -37,9 +33,9 @@ </xsl:template> <xsl:template match="files/directory[@name = 'pages']/*/file[@extension = '.md']"> - <xsl:call-template name="get_page_data"> - <xsl:with-param name="handle" select="@name"/> - </xsl:call-template> + <xsl:variable name="handle" select="@name"/> + + <xsl:apply-templates select="$root/pages/entry[@handle = $handle]" mode="resolve"/> </xsl:template> </xsl:stylesheet> |