Skip to content

Add the capability to change the website default language, in the admin #570

@er314

Description

@er314

The website's frontend default language is set in stone upon initial installation & configuration.
After the fact, if for some reason you want to change the default language to another language of your website, it looks pretty much insoluble.
This topic has been discussed since years (decades :-) , with

  • (to my knowledge) no manual method found yet which would work flawlessly,
  • the consensus that this should be a PW core feature (it's a quite common feature of other CMS).

-> Feature request : Add the capability to change the website default language, in the admin.

** Past discussions with partial solutions :

  1. attempt at moving DB data in-and-out of the default language :
    https://processwire.com/talk/topic/11451-change-default-language-revisited/page/2/#findComment-201077
    https://processwire.com/talk/topic/11451-change-default-language-revisited/page/2/#findComment-201177
  2. Ryan's workaround suggestion : "consider the 'default' language as 'no language', ... when editing... you'd probably just consider to be notes for the admin" :
    (-> doesn't seem feasible to me, as the default language is still the one on which the REQUIRED state is checked, so it still MUST be populated)
    https://processwire.com/talk/topic/5062-switch-default-language-possible/#findComment-50172

** Example Drupal default language setting (see screenshot & accepted answer) :
https://drupal.stackexchange.com/questions/8526/default-language-not-working-properly

** Design decisions related to this feature :

  • Implementation-wise, (a) should we change the internal logic of what the default website is ? Or (b) should we move all DB-dependent stuff in-and-out of the default language ? I guess (a) is much preferable if feasible.
  • The now-default language now has enforced constraints (e.g. REQUIRED state) which were not enforced so far -> what to do with the existing Pages having those new constraints now unmet ? I guess, do nothing (leave it to developer post-processing), enforce the constraints starting from now on (upon save of existing Pages) ; my understanding is that this is what Drupal is doing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions