Menüs in mehrsprachigen Websites

Hier landen ältere Beiträge aus dem Forum "Module & Templates" sowie den dazugehörigen Unterforen. Ruhig auch mal reinschauen.
Antworten
LerneLebenslang
Beiträge: 2
Registriert: Mo 22. Jun 2015, 12:42
Wohnort: Berlin

Menüs in mehrsprachigen Websites

Beitrag von LerneLebenslang » Mo 22. Jun 2015, 16:01

Hallo zusammen!
Ich habe Blackcat auf seine Verwendbarkeit für mehrsprachige Websiteprojekte hin getestet und bin bis jetzt zu 80 Prozent begeistert.
Die fehlenden 20 Prozent kommen wie folgt zustande:
Ich habe jeweils drei Testseiten in Deutsch, Englisch und Italienisch (jeweils eine auf Level 0,1 und 2) erstellt und diese über "Sprachverknüpfungen" untereinander verknüpft.
Wähle ich im deutschsprachigen Menü eine Seite oder untergeordnete Seite aus und wechsle dann über die Fähnchen (Template: mojito) beispielsweise zu Italienisch, bekomme ich das italienischsprachige Pendant mit Menü in Italienisch - so weit, so gut.
Klicke ich jetzt allerdings im Italienischen Menü auf eine andere Seite, so erhalte ich zwar den italienischsprachigen Content, das Menü erscheint aber plötzlich in Deutsch. (Hänge ich in der Adresszeile des Browsers "?lang=IT" an die URI an, dann stimmt wieder alles.)
Das Problem liegt also sicher darin, show_menu2 dahingehend aufzubohren, daß auch hier in den Menüpunkten die Dokumenten- und Menüsprache mit ausgegeben wird.
Ich habe momentan leider nicht die Zeit dazu, sonst würde ich mich selber dran setzen, aber vielleicht gibt es hier jemanden, der sich der Sache annehmen kann.
Beste Grüße
Stefan

Benutzeravatar
shadowcat
Administrator
Beiträge: 4171
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Menüs in mehrsprachigen Websites

Beitrag von shadowcat » Mo 22. Jun 2015, 16:25

Hallo Stefan,

vermutlich hängt es eher an unseren Page Helper, der die URL ohne das "lang=XX" zurückliefert. Versuche mal folgenden Patch: Datei ./modules/show_menu2/include.php

SUCHE

Code: Alles auswählen

$url = CAT_Helper_Page::getLink( CAT_Helper_Page::properties($page['page_id'],'link') );
EINFÜGEN, DAHINTER

Code: Alles auswählen

if(CAT_Registry::get('PAGE_LANGUAGES')) $url .= '?lang='.LANGUAGE;
Das ist erst mal "quick & dirty", aber vielleicht reicht es in Deinem Fall ja schon.
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

LerneLebenslang
Beiträge: 2
Registriert: Mo 22. Jun 2015, 12:42
Wohnort: Berlin

Re: Menüs in mehrsprachigen Websites

Beitrag von LerneLebenslang » Mo 22. Jun 2015, 17:12

Das war wirklich "quick" und sicher nicht "dirty". Jetzt macht BlackCat es genau so, wie ich es mir vorstelle.
Herzlichen Dank und ein zufriedenes Grunzen ;)
Stefan

Benutzeravatar
shadowcat
Administrator
Beiträge: 4171
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Menüs in mehrsprachigen Websites

Beitrag von shadowcat » Mo 22. Jun 2015, 17:32

Der "richtige" Fix findet in der Version 1.2 statt, dann wirst Du Deinen "Hack" wieder entfernen müssen. ;)
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Antworten