stellt eine Auswahl von URL-Schemes für YRewrite zur Verfügung.
Für jedes Schema können der Suffix, die passende URL-Normalisierung je Sprache und eine URL-Ersetzung gewählt werden. Andere AddOns, die eigene Schemes installieren, sollten vorab deaktiviert werden. Die Einstellungen findet man im zusätzlichen Reiter YRewrite Scheme in YRewrite.
Hier kann der Suffix der URLs festgelegt werden. Zur Auswahl stehen:
- "ohne"
- ".html"
- "/"
Stellt ein optimiertes YRewrite-Schema zur Verfügung, das dieser Form entspricht:
example.tld/sprache/kategorie/kategorie/…/artikel/
Es ist insofern optimiert, dass es html Tags aus URLs entfernt und eine erweiterte Ersetzungstabelle verwendet. Die erweiterte Ersetzungstabelle weiß nur bei speziellen Serverkonfigurationen unterschiede zum YRewrite Schema auf. Sie ist vor allem für Sprachen, die die URL kodierung Nutzen interessant.
Implementiert ein kurzes URL-Schema für alle Unterseiten.
Vorher:
example.tld/en/coffee/beans/india/malabar.html
(yrewrite 1)
example.tld/en/coffee/beans/india/malabar/
(yrewrite 2)
Nachher:
example.tld/en/malabar
(ohne suffix)
⚠️ Wichtig: Das Schema ist nur dann sinnvoll, wenn Seiten innerhalb einer Sprache nicht mehrfach vorkommen. Gäbe es etwa den Malabar-Kaffee nicht nur in 🇮🇳 Indien, sondern auch in 🇧🇷 Brasilien, sollte dieses URL-Schema besser nicht verwendet werden!
Ersetzt die URLs der Elternkategorien mit den URLs der nächst zugehörigen Kindkategorie.
Hier stehen 2 Varianten zur Auswahl:
- Variante 1: Es werden nur die Kategorien ersetzt, deren Startartikel keinen Inhalt haben.
- Variante 2: Es werden alle Kategorien ersetzt, unabhängig vom Inhalt der Startartikel.
Ideal für Webpräsenzen, die keine Vorschaltseiten für die jeweilige Kategorie benötigen (z.B. bei einer Dropdown-Navigation)
Für jede Sprache kann eingestellt werden, ob das optimierte YRewrite Schema verwendet werden soll, oder die Zeichen URL kodiert werden sollen. Letzteres ermöglicht russische, chinesische und andere URLs - kurz gesagt URLs mit Zeichen die nicht das lateinische Alphabet verwenden.
мне-нравится-редакс.html
编辑系统.html
YRewrite Scheme lässt sich wie das Original YRewrite auch modifizieren / erweitern.
Hierzu muss sichergestellt werden, dass das eigene AddOn oder das Projekt-AddOn in der package.yml load: late
notiert hat. Damit wäre sichergestellt, dass es nach dem yRewrite_scheme AddOn geladen und registriert wird.
In die boot.php des project-AddOns:
$addon = rex_addon::get('project');
$scheme = new my_project_rewrite_scheme();
rex_yrewrite::setScheme($scheme);
In den Lib-Ordner des project AddOns (z.B. `my_project_rewrite_scheme.php)
class my_project_rewrite_scheme extends yrewrite_url_schemes
{
/**
* @param string $string
* @param int $clang
*
* @return string
*/
public function normalize($string, $clang = 1)
{
$string = str_replace(
['&'],
['und'],
$string
);
return parent::normalize($string, $clang);
}
}
Anleitung und Beispiele findet Ihr in der Dokumentation innerhalb des yrewrite-Addons oder auf Github.
siehe LICENSE