contao / core

Contao 3 → see contao/contao for Contao 4
GNU Lesser General Public License v3.0
490 stars 213 forks source link

Fehler beim Duplizieren eines Startpunkts mit Unterelementen #6625

Open Paratron opened 10 years ago

Paratron commented 10 years ago

Ich habe gerade für eine Mehrsprachige Seite den Startpunkt der Fallback-Sprache mit allen Unterelementen duplizieren wollen.

Zwei Fehler passieren dabei:

Contao entfernt alle Seiten-Aliase.
Ich verstehe ja, das dies notwendig ist, wenn man nur Teile der Seitenstruktur innerhalb des selben Startpunkts dupliziert, da sonst Aliase doppelt vorhanden sind. Aber beim Kopieren einer kompletten Seitenstruktur müssen die Aliase erhalten bleiben.

Contao korrigiert interne Weiterleitungen nicht.
Dies wäre noch zu verschmerzen, da ich weiß das es nicht so trivial zu programmieren ist, aber korrekterweise sollte Contao interne Weiterleitungen ebenfalls neu ziehen und nicht einfach die Weiterleitung zu den "alten" Seiten im vorherigen Seitenbaum beibehalten.

frontendschlampe commented 10 years ago

Also ich sehe beides nicht als Fehler:

Wenn du einen Seitenbaum z.B. von Deutsch in Englisch duplizierst, dann musst du ja auch die Aliase an die englische Sprache anpassen ... z.B. sollte die Seite domain.foo/de/ueber-uns.html dann logischerweise domain.foo/en/about-us.html heißen. Somit musst du die Aliase eh anpassen.

Der zweite Fall ist auch kein Fehler, denn woher soll Contao wissen, auf welche Seite im neuen Seitenbaum hinleiten soll? Relativ zur Weiterleitungsseite? Was ist, wenn sich die Struktur ändert? Was ist, wenn sich die Weiterleitung im neuen Seitenbaum auf eine andere Seite beziehen soll?

Schlussendlich musst du in beiden Fällen egal mit welcher Contao-seitigen Verhaltensweise nochmal alle Aliase und Weiterleitungen überprüfen, wobei ich wie bereits beschrieben, das aktuelle Verhalten als richtiger empfinde.

tristanlins commented 10 years ago

@hofff das mit dem Alias stimmt nicht so ganz. Wenn man das Core-only betrachtet, müssen die Aliase sogar gleich sein. Nur wenn du eine Erweiterung wie bspw. changelanguage verwendest, kannst du unterschiedliche Aliase verwenden.

aschempp commented 10 years ago

@tristanlins die Aliase müssen überhaupt nicht gleich sein, dem Core ist das völlig egal. Ich vermute du beziehst dich auf die Sprachumschaltung auf contao.org, das ist aber ein eigenes Modul von Leo ;-)

frontendschlampe commented 10 years ago

@tristanlins Wieso sollten die Aliase gleich sein müssen? Verstehe ich nicht! ;-)

tristanlins commented 10 years ago

@aschempp gab es nicht mal im Core einen "Sprachenwechsler", der erforderte dass die Aliase gleich sind, weil ansonsten die Seite in einer anderen Sprache nicht gefunden wird? Ich verwende schon ewig changelanguage, daher sind mir die Core Funktionen in dem Fall nur aus dem geläufig, was ich irgendwann mal hier gelesen habe ;-)

aschempp commented 10 years ago

In einer Beta-Version, wurde aber zugunsten von changelanguage wieder entfernt ;-)

Paratron commented 10 years ago

Das mit den Aliasen ist mir zwischenzeitlich auch aufgegangen. :) @hofff hat damit natürlich völlig recht, das die Aliase ebenfalls übersetzt werden müssen. Dennoch finde ich eine Übernahme der Aliase beim Kopieren sinnvoller als sie einfach zu verwerfen. In vielen Fällen kann man die Aliase nämlich sprachübergreifend beibehalten (jap, anglizismus ist weit verbreitet in DE) und muss sich so doppelte Arbeit machen und alles neu ausfüllen.

Mit den Weiterleitungen stimme ich dagegen nicht zu. Contao kann sehr wohl wissen wo die Weiterleitungen hinführen müssen - es kopiert ja schließlich die Seiten. Dabei die Weiterleitungen nicht anzupassen wäre in etwa so, als würden die kopierten neuen Seite die Artikel aus dem alten Seitenbaum einbinden... Ich habe im Forum dazu schon einen Vorschlag gemacht, wie sich das korrekte, relative kopieren der Weiterleitungen einfach realisieren lässt.