seit der Contenido-Version 4.8.11 gibt es ein paar Module des Beispielmandanten, die die neue UrlBuilder-Funktionalität einsetzen.
Mit dem UrlBuilder ist es möglich, verschiedene Arten von URLs zu Frontendseiten zu generieren, wie z. B.
Code: Alles auswählen
front_content.php?idart=123
articlename,123.php
/categoryname/articlename.html
Die Bereitstellung einer einheitlichen Schnittstelle ist aber in der Praxis nicht möglich. Für Contenido gibt es verschiedene UrlBuilder und die sind nicht kompatibel zueinander. Während die einen Parameter wie
Code: Alles auswählen
$aParams = array('lang' => $lang, 'idcat' => $cat_id, 'idart' => $key);
Code: Alles auswählen
$aParams = array('search' => array('lang' => $lang, 'idcat' => $cat_id, 'idart' => $key),
'idcat' => $idcat, // needed to build category path
'lang' => $lang, // needed to build category path
'level' => 1); // needed to build category path
Die Modulcodes im Beispielmandanten sind in der aktuellen Contenido-Version (4.8.11) nicht kompatibel mit dem Advanced Mod Rewrite Plugin. Falls ihr euch dafür für die Verwendung des Plugins entscheided, soll die folgende Anleitung euch bei der Anpassung der Modulcodes helfen und somit die Anzahl der damit verbundenen Anfragen im Forum reduzieren.
Betroffen davon sind sämtliche Module des Beispielmandanten, in denen URLs zu Frontendseiten unter Verwendung von Contenido_Url generiert werden (z. B. Navigation_Main, Navigation_Meta, News, Search_Output, Sitemap). Da der UrlBuilder des AMR-Plugins (Bezeichner MR) mit den gleichen Paramertern wie der UrlBuilder der Standard Url-Builder (Bezeichner frontend) arbeitet, ist die Anpassung jeweils in der Erweiterung der if-Bedingung möglich.
Anpasssen des Moduls "Navigation_Main":
Die Datei cms/includes/Util/Modules/Contenido_NavMain_Util.class.php öffnen und die Zeile
Code: Alles auswählen
if ($aCfg['url_builder']['name'] == 'front_content') {
Code: Alles auswählen
if ($aCfg['url_builder']['name'] == 'front_content' || $aCfg['url_builder']['name'] == 'MR') {
Anpassen des Moduls "Navigation_Meta":
In der Modulausgabe die Zeile
Code: Alles auswählen
if ($cfg['url_builder']['name'] == 'front_content') {
Code: Alles auswählen
if ($cfg['url_builder']['name'] == 'front_content' || $cfg['url_builder']['name'] == 'MR') {
Anpassen des Moduls "News":
In der Modulausgabe die Zeile
Code: Alles auswählen
if ($cfg['url_builder']['name'] == 'front_content') {
Code: Alles auswählen
if ($cfg['url_builder']['name'] == 'front_content' || $cfg['url_builder']['name'] == 'MR') {
Anpassen des Moduls "Search_Output":
In der Modulausgabe überall das Vorkommen von
Code: Alles auswählen
if ($cfg['url_builder']['name'] == 'front_content') {
Code: Alles auswählen
if ($cfg['url_builder']['name'] == 'front_content' || $cfg['url_builder']['name'] == 'MR') {
Anpassen des Moduls "Sitemap":
Die Datei cms/includes/Util/Modules/Contenido_Sitemap_Util.class.php öffnen und die Zeile
Code: Alles auswählen
if ($aCfg['url_builder']['name'] == 'front_content') {
Code: Alles auswählen
if ($aCfg['url_builder']['name'] == 'front_content' || $aCfg['url_builder']['name'] == 'MR') {
Es kann sein, dass noch andere Module davon betroffen sind, daher erhebt die Auflistung keine Anspruch auf Vollständigkeit.
Gruß
xmurrix