Eine Google-Sitemap mit FirstSpirit™ erstellen

bohm
I'm new here
7 12 1,939

Hinweis:

Es existiert eine aktualisierte Version dieses Artikels. Bitte besuchen Sie die Seite

Creating Sitemaps for Search Engines in unserem Inside FirstSpirit blog.

In vielen Projekten besteht die Notwendigkeit, eine Google-Sitemap vorzuhalten.

Nachstehend ein Beispiel dafür, wie man mit der Navigationsfunktion eine solche Sitemap erstellen kann. Hierbei werden auch die Einzelseiten einer Contentprojektion berücksichtigt:

<CMS_HEADER>

<CMS_FUNCTION name="Navigation" resultname="googleSitemap">

  <CMS_PARAM name="expansionVisibility" value="all"/>
  <CMS_PARAM name="wholePathSelected" value="0"/>
  <CMS_PARAM name="siteMap" value="1" />

  <CMS_ARRAY_PARAM name="unselectedHTML">
    <CMS_ARRAY_ELEMENT index="0..10"><![CDATA[
   <url>
    <loc>http://www.domain.de/$CMS_REF(#nav.ref,abs:2)$</loc>
   </url>   
    ]]></CMS_ARRAY_ELEMENT>
  </CMS_ARRAY_PARAM>
 
  <CMS_ARRAY_PARAM name="pageRefRendering">
   <CMS_ARRAY_ELEMENT index="0..10"><![CDATA[
   $CMS_IF(#nav.ref.getMultiPageParams(#global.language,#global.templateSet).getPageCount() > 1)$
       $CMS_IF(!#nav.ref.getMultiPageParams(#global.language,#global.templateSet).getData().isEmpty)$
           $CMS_FOR(#csPages,#nav.ref.getMultiPageParams(#global.language,#global.templateSet).getData())$
               <url>
                <loc>http://www.domain.de/$CMS_REF(#nav.ref,abs:2,contentId:#csPages.getId())$</loc>
               </url>
           $CMS_END_FOR$
       $CMS_ELSE$
           <url>
               <loc>http://www.domain.de/$CMS_REF(#nav.ref,abs:2)$</loc>
            </url>
       $CMS_END_IF$
   $CMS_ELSE$   
       <url>
        <loc>http://www.domain.de/$CMS_REF(#nav.ref,abs:2)$</loc>
       </url>
   $CMS_END_IF$
  
   ]]></CMS_ARRAY_ELEMENT>
  </CMS_ARRAY_PARAM>

</CMS_FUNCTION>

</CMS_HEADER><?xml version="1.0" encoding="UTF-8"?>
  <urlset xmlns="http://www.google.com/schemas/sitemap/0.84">
    $CMS_VALUE(googleSitemap)$
  </urlset>

Die Spezifikation für eine solche Sitemap findet man hier.

12 Comments