Add the store to the URL path


#1

Hello everyone,

I am trying to add the store to the URL path. (eg. http://domain/store/locale/ instead of http://store.domain/locale/).

I registered the controller providers with a prefix.

It seems that the prefix is not working correctly or I missed something. I had to override some methods to read the locales from the right offset.

Which is the best approach to add a prefix to the URL path and update the URLs accordingly? Since this change will impact the whole application, I’m looking for a generic solution and avoid overriding methods from all the modules.

Best Regards,
Florin Mogos


#2

To be a bit more specific, we need:
www. our-shop .com/country/language

for example: www. our-shop .com/de/en - German shop in english language
or www. our-shop.com /fr/it - French shop in italian language

Instead of the out of the box www. our-shop .com/locale thing provided by Spryker.

Best Regards
Sebastian


#3

Hi @florin and @seb.

If you want to follow this approach, you need to adopt it (there is no out-of-box feature to enable this).
There is no hardcoded path in spryker but spryker-shop needs to be aligned.
You need to adopt these items:

  1. Url DataImporter (change Urls in CSV files, having /de/de/product-1 instead of /de/product-1).
  2. UrlResolver (Routing for Yves).
  3. Places in Controllers/Twigs in Shop which rely on /{locale}/ and change everywhere to rely on /{store}/{locale}/.

WBR
Valerii