Details
-
Story
-
Resolution: Unresolved
-
High
-
None
-
None
Description
Currently when there are System (auto-generated) URL Alias entries, e.g. "/Contact" for one language and "/Kontakt" for another one, it's not possible to create a custom redirect of "/Contact" to "/Kontakt" for that other language (see EZP-31511 for more detailed steps to reproduce).
The API behaves that way because URL Alias Storage does not allow to keep multiple entries for the same path but for multiple languages. It causes a lot of side-effects like the one described in EZP-29584 and leads to a lot of other bugs reported throughout the years. Improvements for this area are going to be added gradually via EZP-31818. While EZP-29584 is the most correct schema for the current needs, the change is too excessive BC-wise and should be applied to an improved Storage, not a Legacy one.
For the Legacy Storage, we're going to make `lang_mask` a part of `ezurlalias_ml` composite primary key. It should be enough to make non-intuitive behavior of URL Aliases disappear.