I am hoping to use Drupal 7 for a multi-country, multi-language e-commerce website, and I'm looking for advice about the best way to structure it. This would be my first Drupal project and I have a timeframe of six-eight months both to learn and complete the website. At this stage, I'm trying to find out what is possible with Drupal, in order to build a test site to prove to my superiors that it is the right product on which to base our new site.

Firstly I'm not sure if I need to use "multi site", or if it should all be run as one single site. The majority of the content will be shared across all countries and languages. However, I do need the ability to customize content on specific countries' pages - for instance the Canada (French) homepage might show different featured content to the France (French) homepage, as well as a different currency. We intend to ultimately run the site from three server clusters in the UK, US and Japan.

Secondly, I'm planning to use a single domain with ISO country codes to specify the country in the URL. For countries with a single language, I'd like to map this country code to a list of languages. For countries with multiple languages, we would add a hyphen and two letter language code to determine which to display. For example:

I understand that it is possible to use the "path prefix" method to determine which language to display, but ideally I want to only use the country code (except for multi language sites) - and have this mapped to a list of languages available in that country. Is this possible, or would I need to add both country and language codes in the URL (e.g. www.example.com/ca/en or www.example.com/ca/fr ) ?

A user's country would also determine which currency is displayed, as well as date formats, and other regional settings such as decimal and thousands separator formats. Is that possible? Are additional modules required?

I'd be extremely grateful for any feedback from Drupal users, especially from anyone with experience in multi-country, multi-lanugage sites.

Comments

psiska’s picture

Have you ever gotten an answer on / solution for this, since the post is unanswered here.

JGO’s picture

Yep I would like to know too, don't find a solution.

escapeit’s picture

vhiering’s picture

vinothkumarc’s picture

https://www.drupal.org/project/country_path module with https://drupal.org/project/domain module will help to implement this feature.  

Once you enable domain and country_path, goto admin->configuration->(add)domain records and update the hostname field. i.e., If the domain is detected using country code in path, you should specify like example.com/usa . Your hostname will be example.com and country path - usa

Domain access module may help to manage content for each country (domain records)

chalee’s picture

You mention "If the domain is detected using country code in path, you should specify like example.com/usa". Is there somewhere I have to specific which method of domain detection to use.  I'm asking this because I added entries with hostnames as below:
example.com/usa
example.com/uk
Add added a domain navigation block. But when I switch between the two it always loads home page (example.com) irregardless of whether I select "Link to active url" or "Link to site home page" in block configuration settings.

--
Chalee

dipikas’s picture

Anybody has a found solution for this in drupal8.plz answer, it's urgent for me