| <?xml version="1.0" encoding="UTF-8"?> | 
 | <xsl:stylesheet version="2.0" | 
 |   xmlns:html="http://www.w3.org/TR/REC-html40" | 
 |   xmlns:sitemap="http://www.sitemaps.org/schemas/sitemap/0.9" | 
 |   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> | 
 |   <xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes" /> | 
 |   <xsl:template match="/"> | 
 |     <html xmlns="http://www.w3.org/1999/xhtml"> | 
 |       <head> | 
 |         <title>XML Sitemap</title> | 
 |         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | 
 |         <style type="text/css"> | 
 |           body { | 
 |             font-size: 14px; | 
 |           } | 
 |  | 
 |           a { | 
 |             color: inherit; | 
 |           } | 
 |  | 
 |           table { | 
 |             width: 100%; | 
 |             border-radius: 8px; | 
 |             border-collapse: collapse; | 
 |             overflow: hidden; | 
 |             text-align: center; | 
 |           } | 
 |  | 
 |           caption { | 
 |             font-weight: bold; | 
 |             font-size: 1.5rem; | 
 |             line-height: 2; | 
 |           } | 
 |  | 
 |           th { | 
 |             min-width: 56px; | 
 |             padding: 8px; | 
 |  | 
 |             background-color: #41b883; | 
 |             color: #fff; | 
 |  | 
 |             font-weight: bold; | 
 |             font-size: 16px; | 
 |           } | 
 |  | 
 |           @media (max-width: 719px) { | 
 |             th { | 
 |               font-size: 14px; | 
 |             } | 
 |           } | 
 |  | 
 |           th:first-child { | 
 |             text-align: start; | 
 |           } | 
 |  | 
 |           tr:nth-child(even) { | 
 |             background-color: #f2f2f2; | 
 |           } | 
 |  | 
 |           tr:hover { | 
 |             background-color: #e8e8e8; | 
 |           } | 
 |  | 
 |           td { | 
 |             padding: 4px; | 
 |             font-size: 14px; | 
 |           } | 
 |  | 
 |           @media (max-width: 719px) { | 
 |             td { | 
 |               font-size: 12px; | 
 |             } | 
 |           } | 
 |  | 
 |           td:first-child { | 
 |             text-align: start; | 
 |           } | 
 |  | 
 |           footer { | 
 |             margin-top: 10px; | 
 |             padding: 4px; | 
 |  | 
 |             color: grey; | 
 |  | 
 |             font-size: 12px; | 
 |             text-align: center; | 
 |           } | 
 |         </style> | 
 |       </head> | 
 |       <body> | 
 |         <h1>XML Sitemap</h1> | 
 |         <div id="content"> | 
 |           <table> | 
 |             <caption>URLs list</caption> | 
 |             <thead> | 
 |               <tr> | 
 |                 <th> | 
 |                   <xsl:value-of select="concat('URL (', count(sitemap:urlset/sitemap:url), ')')" /> | 
 |                 </th> | 
 |                 <th>Priority</th> | 
 |                 <th>Change Frequency</th> | 
 |                 <th>Last Updated Time</th> | 
 |               </tr> | 
 |             </thead> | 
 |             <tbody> | 
 |               <xsl:variable name="lower" select="'abcdefghijklmnopqrstuvwxyz'" /> | 
 |               <xsl:variable name="upper" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'" /> | 
 |               <xsl:for-each select="sitemap:urlset/sitemap:url"> | 
 |                 <tr> | 
 |                   <td> | 
 |                     <xsl:variable name="itemURL"> | 
 |                       <xsl:value-of select="sitemap:loc" /> | 
 |                     </xsl:variable> | 
 |                     <a href="{$itemURL}"> | 
 |                       <xsl:value-of select="sitemap:loc" /> | 
 |                     </a> | 
 |                   </td> | 
 |                   <td> | 
 |                     <xsl:choose> | 
 |                       <xsl:when test="sitemap:priority"> | 
 |                         <xsl:value-of select="concat(sitemap:priority*100,'%a')" /> | 
 |                       </xsl:when> | 
 |                       <xsl:otherwise> | 
 |                         <xsl:text>0.5</xsl:text> | 
 |                       </xsl:otherwise> | 
 |                     </xsl:choose> | 
 |                   </td> | 
 |                   <td> | 
 |                     <xsl:choose> | 
 |                       <xsl:when test="sitemap:changefreq"> | 
 |                         <xsl:value-of select="concat(translate(substring(sitemap:changefreq, 1, 1),concat($lower, $upper),concat($upper, $lower)),substring(sitemap:changefreq, 2))" /> | 
 |                       </xsl:when> | 
 |                       <xsl:otherwise> | 
 |                         <xsl:text>-</xsl:text> | 
 |                       </xsl:otherwise> | 
 |                     </xsl:choose> | 
 |                   </td> | 
 |                   <td> | 
 |                     <xsl:value-of select="concat(substring(sitemap:lastmod,0,11),concat(' ', substring(sitemap:lastmod,12,5)))" /> | 
 |                   </td> | 
 |                 </tr> | 
 |               </xsl:for-each> | 
 |             </tbody> | 
 |           </table> | 
 |         </div> | 
 |         <footer> | 
 |           Generatd by <a href="https://plugin-sitemap2.vuejs.press">vuepress-plugin-sitemap2</a> | 
 |         </footer> | 
 |       </body> | 
 |     </html> | 
 |   </xsl:template> | 
 | </xsl:stylesheet> |