blog/_layouts/xslt_container.html

59 lines
1.8 KiB
HTML

{% if page.layout == "xslt" %}<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xml" href="/feed.xslt.xml"?>
<xsl:stylesheet
version="3.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sm="http://www.sitemaps.org/schemas/sitemap/0.9">
<xsl:output method="html" version="4.0" encoding="UTF-8" indent="yes" doctype-system="about:legacy-compat" />
<xsl:template match="/">
{{ content }}
</xsl:template>
<xsl:template match="atom:feed/atom:entry">
<div class="item">
<h2>
<a>
<xsl:attribute name="href">
<xsl:value-of select="atom:link/@href"/>
</xsl:attribute>
<xsl:value-of select="atom:title"/>
</a>
</h2>
<small class="gray">
Published at <xsl:value-of select="substring(atom:published, 0, 11)" />
</small>
<p><xsl:value-of select="atom:summary"/></p>
<hr />
</div>
</xsl:template>
<xsl:template match="/rss/channel/item">
<div class="item">
<h2>
<a>
<xsl:attribute name="href">
<xsl:value-of select="link"/>
</xsl:attribute>
<xsl:value-of select="title"/>
</a>
</h2>
<small class="gray">
Published at <xsl:value-of select="substring(pubDate, 0, 17)" />
</small>
<p><xsl:value-of select="description"/></p>
<hr />
</div>
</xsl:template>
<xsl:template match="sm:urlset">
<xsl:for-each select="sm:url">
<li>
<a>
<xsl:attribute name="href"><xsl:value-of select="sm:loc" /></xsl:attribute>
<xsl:value-of select="sm:loc" />
</a>
</li>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
{% else %}<!DOCTYPE html>
{{ content }}
{% endif %}