Benutzer-Werkzeuge

Webseiten-Werkzeuge


typo3:seo

Suchmaschinenoptimierung (SEO)

Sitemaps

TYPO3 v9 kann XML-Sitemaps von normalen Seiten sowie Plugins (z.B. news) erstellen.

Hierfür muss:

  1. EXT:seo installiert werden
  2. das Static Template „XML Sitemap (SEO)“ eingebunden werden

Die Liste aller Sitemaps kann dann unter dem folgenden typeNum aufgerufen werden:
https://www.example.org/?type=1533906435

Details: Changelog - Feature: #84525 - XML Sitemap

news

Derzeit werden in einer Sitemap die News-Datensätze mehrfach ausgegeben – einmal pro Sprache. (Stand: TYPO3 9.5.4; EXT:news 7.0.8). Die URL-Pfade sind dabei immer die der jeweils aktuellen Frontend-Sprache.

Mit additionalWhere sowie einer Condition lässt sich das jedoch einfach lösen:

plugin.tx_seo {
    config {
        xmlSitemap {
            sitemaps {
                news {
                    provider = TYPO3\CMS\Seo\XmlSitemap\RecordsXmlSitemapDataProvider
                    config {
                        table = tx_news_domain_model_news
                        sortField = sorting
                        lastModifiedField = tstamp
                        // Workaround: Newsbeiträge auf aktuelle Frontend-Sprache begrenzen:
                        additionalWhere = sys_language_uid = 0
                        recursive = 3
                        pid = 15
                        url {
                            pageId = 9
                            fieldToParameterMap {
                                uid = tx_news_pi1[news]
                            }
 
                            additionalGetParameters {
                                tx_news_pi1.controller = News
                                tx_news_pi1.action = detail
                            }
 
                            useCacheHash = 1
                        }
                    }
                }
            }
        }
    }
}
 
 
// Anpassen für erste Fremdsprache:
[siteLanguage("title") == "English"]
    plugin.tx_seo.config.xmlSitemap.sitemaps.news.config.additionalWhere = sys_language_uid = 1
[end]

Troubleshooting

Falls ein Routing Enhancer für PageType angelegt wurde, werden die Links in der Sitemap-Liste nicht mehr richtig generiert: es fehlt der typeNum-Parameter. Statt der jeweiligen Sitemap öffnet man die Startseite.

Um dies zu korrigieren, muss der typeNum 1533906435 in der config ergänzt werden:

routeEnhancers:
  PageTypeSuffix:
    type: PageType
    default: /
    map:
      /: 0
      feed.rss: 9818
      sitemap.xml: 1533906435
typo3/seo.txt · Zuletzt geändert: 2019/02/26 20:27 von admin