Multisite, translate and regions


I am not sure how to approach this:

Let’s say I’d like to manage three sites from one OC installation. One for the US market, one for Switzerland and one for the UK. All three would have a lot of overlapping content - but also quite a lot of differences.

For the US I’d need English only, For UK obviously Englisch as well - and for Switzerland: German, French and Italian.

When I look at existing websites, which also cover this region/ language challenge, they usually have separate region and language pickers. and they have URLs like…

  • for Switzerland: domain/ch_de, /ch_fr, /ch_it
  • for US: /us_en
  • for UK: /uk_en

How to solve this with october cms? Will the multisite and/or translate plugin help? Or anything else?

Thank you for some inspiration, ideas or even solutions :slight_smile:

Hi and welcome @chris5000

You can set up 5 sites as described here in the Manage Sites area, then use Tailor with the multisite feature. Each site can be assigned a unique API code, and these can be prefixed to group them. The sitepicker on the front end can use these prefixes to determine which site and language is currently selected.

Be sure to use multisite true and not sync mode since this will push all records to every site. For multi-layered sites it is better to manage the records manually. Simply toggling to a different site for a record will prompt you to clone a record.

So to answer simply: Tailor and Multisite is all you need for this.

1 Like

Thank you. Maybe a dumb question because I am really new to this stuff. But will this also work for plugins/ custom models somehow where I want to have some records only show up in certain regions? Or only with Taylor-made content?

Plugins and custom models can implement the same technology as Tailor, using the Multisite trait:

Here is a basic example:

class User extends Model
    use \October\Rain\Database\Traits\Multisite;

    protected $propagatable = [];