Kurzreferenz Slug/Routing
Was ist Routing?
TYPO3 nutzt sogenanntes Routing, um aus Seiten und Inhalten automatisch sprechende URLs zu generieren.
Beispiel: Aus einer Seite mit dem Titel „News“ wird automatisch die URL …/news.
Diese automatische URL wird Slug genannt. Der Slug ist das letzte Segment der URL (also der Teil nach dem letzten /) und kann bei Bedarf angepasst werden – z. B. um besonders kurze oder gut lesbare URLs zu erzeugen.
Was ist ein Slug?
Der Slug ist:
- ein URL-Bestandteil, der eine Seite oder einen Inhalt eindeutig identifiziert.
- automatisch abgeleitet vom Seitentitel (kann aber manuell angepasst werden).
- kleingeschrieben, ohne Sonderzeichen, mit Bindestrichen statt Leerzeichen.
- in den Seiteneigenschaften unter dem Reiter Allgemein zu finden (Feld URL-Segment).
Beispiel: Seite heißt: Über uns → Slug wird automatisch ueber-uns
Seite heißt: News 2024 → Slug wird automatisch news-2024
Wofür ist das wichtig?
- Der Slug bestimmt die Adresse einer Seite – also wie Besucher:innen die Seite im Browser erreichen.
- Gut gewählte Slugs verbessern die Benutzerfreundlichkeit und die Suchmaschinenoptimierung (SEO).
- Slugs sollten kurz, eindeutig und sinnvoll benannt sein.
Hinweis
Inhalte wie News oder Events haben ebenfalls Slugs – auch hier gilt: Je sprechender, desto besser.
Routing in TYPO3 (für Fortgeschrittene)
Grundlagen
TYPO3 basiert im Bereich Routing auf der Symfony-Routing-Komponente. Das System verarbeitet eingehende URLs und ordnet sie Seiten, Datensätzen oder Funktionen zu.
Die Routing-Logik besteht aus zwei Ebenen:
- Seiten-Routing: Zuordnung von Seiten zu Slugs (automatisch oder manuell).
- Custom Routing / Erweiterungen: Behandlung von GET-Parametern, URL-Rewrites, Plugin-Pfaden etc.
Erweiterte Routing-Konzepte
- Slug-Definition über TCA:
Der Slug ist ein reguläres Feld in der Datenbank und kann in der TCA konfiguriert werden. - URL-Verarbeitung über PageTsConfig:
Slug- und URL-Logik kann über routeEnhancers angepasst werden – zum Beispiel bei News, Events etc.
Voraussetzungen
- Der Webserver muss Rewrite-URLs verarbeiten (z. B. .htaccess oder nginx.conf).
- Die Site-Konfiguration (in config/sites/) muss vorhanden und aktiv sein.
- Slugs müssen eindeutig sein (eval => uniqueInSite in TCA).
Tipp
Das Backend zeigt automatisch Routing-Fehler an, wenn z. B. Slugs doppelt vergeben sind oder Seiten nicht erreichbar sind.