- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE xsl:stylesheet [
- <!ENTITY nbsp " ">
- ]>
- <xsl:stylesheet
- version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:msxml="urn:schemas-microsoft-com:xslt"
- xmlns:umbraco.library="urn:umbraco.library" xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon" xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes" xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath" xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions" xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings" xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets" xmlns:tagsLib="urn:tagsLib" xmlns:BlogLibrary="urn:BlogLibrary"
- exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions Exslt.ExsltStrings Exslt.ExsltSets tagsLib BlogLibrary ">
- <xsl:output method="xml" omit-xml-declaration="yes"/>
- <xsl:param name="currentPage"/>
- <xsl:variable name="urlPrefix">
- <xsl:text>http://</xsl:text>
- <xsl:value-of select="umbraco.library:RequestServerVariables('HTTP_HOST')" />
- </xsl:variable>
- <!-- update this variable on how deep your site map should be -->
- <xsl:variable name="maxLevelForSitemap" select="6"/>
- <xsl:variable name="url" select="concat('http://',umbraco.library:RequestServerVariables('HTTP_HOST'))" />
- <xsl:template match="/">
- <!-- change the mimetype for the current page to xml -->
- <xsl:value-of select="umbraco.library:ChangeContentType('text/xml')"/>
- <!--
- ====================================================
- This <URL> node is for the homepage/root page
- ====================================================
- -->
- <url>
- <loc>
- <xsl:value-of select="concat($url,'/')"/>
- </loc>
- <lastmod>
- <xsl:value-of select="concat($currentPage/ancestor-or-self::node [@level=1]/@updateDate,'+00:00')" />
- </lastmod>
- </url>
- <xsl:call-template name="drawNodes">
- <xsl:with-param name="parent" select="$currentPage/ancestor-or-self::node [@level=1]"/>
- </xsl:call-template>
- <!-- </urlset> -->
- </xsl:template>
- <xsl:template name="drawNodes">
- <xsl:param name="parent"/>
- <xsl:if test="umbraco.library:IsProtected($parent/@id, $parent/@path) = 0 or (umbraco.library:IsProtected($parent/@id, $parent/@path) = 1 and umbraco.library:IsLoggedOn() = 1)">
- <xsl:for-each select="$parent/node [string(./data [@alias='umbracoNaviHide']) != '1' and @level <= $maxLevelForSitemap]">
- <!-- If the document does not have a template, nothing is shown in the frontend anyway.
- So this is not proper content and should not be in the sitemap -->
- <xsl:if test="@template > 0">
- <url>
- <loc>
- <xsl:value-of select="$urlPrefix" />
- <xsl:value-of select="umbraco.library:NiceUrl(@id)" />
- </loc>
- <lastmod>
- <xsl:value-of select="@updateDate" />+00:00
- </lastmod>
- <xsl:if test="./data [@alias='searchEngineSitemapChangeFreq'] != ''">
- <changefreq>
- <xsl:value-of select="./data [@alias='searchEngineSitemapChangeFreq']" />
- </changefreq>
- </xsl:if>
- <xsl:if test="./data [@alias='searchEngineSitemapPriority'] != ''">
- <priority>
- <xsl:value-of select="./data [@alias='searchEngineSitemapPriority']" />
- </priority>
- </xsl:if>
- </url>
- </xsl:if>
- <xsl:if test="count(./node [string(./data [@alias='umbracoNaviHide']) != '1' and @level <= $maxLevelForSitemap]) ">
- <xsl:call-template name="drawNodes">
- <xsl:with-param name="parent" select="."/>
- </xsl:call-template>
- </xsl:if>
- </xsl:for-each>
- </xsl:if>
- </xsl:template>
- </xsl:stylesheet>
SHARE
TWEET

Modifications to CultivSearchEngineSitemap.xslt




Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy.