Field-level locale switcher for localized fields #13858
Replies: 1 comment
-
I fully support this proposal. Before adopting Payload, my agency and I spent many years with a proprietary CMS for European clients with international markets and many languages. We have always had concrete, tangible feedback from our clients that this feature — which we implemented with tabs on individual fields — was a huge advantage for their daily workflow. In fact, it was a functionality they simply couldn't find in other CMS on the market, and has always been a key differentiator for us. A limitation we've encountered on Payload when implementing a similar plugin is the inability to save multiple localizations simultaneously with a single API call. This would be another interesting improvement, given the field-based nature of Payload's localization. I'm sure implementing it would be greatly appreciated by the Payload community, and the multi-language website maintainers 😄 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hey Payload Team & Contributors 👋
I propose adding a locale switcher component directly to individual fields that have the
localized: true
property. This would allow a content editor to switch between locales for a specific field without having to use the global locale switcher in the top-right corner of the admin UI.Problem & Motivation
Payload's current localization is powerful because it's field-based, but the editing experience is centered around a global locale state. When an editor wants to check or edit the translation for a single field, they must:
This process can be cumbersome, especially in complex documents with many fields. It also changes the locale for all other fields and the entire UI, which may not be the desired behavior when the editor's focus is on translating one specific piece of content.
A field-level switcher would:
Proposed Solution
For any field with
localized: true
, a UI element (like a dropdown, a set of tabs, chips...) could be rendered next to the field's label. Selecting a different locale from this component would update the input to show the value for that locale, allowing it to be viewed and edited.The global locale switcher would still be valuable for setting the initial or primary language for the document view, but this "local" switcher would provide a more granular level of control.
Example of the proposed UI:
Clicking on
[DE]
would refresh the input field to show the German content.Existing Community Implementations
It's worth noting that the community has already shown a desire for this feature. The third-party plugin
@websolutespa/payload-plugin-localization
was created to solve this exact problem, which demonstrates the feature's value. Integrating this functionality into the core product would be a significant improvement for all users.Additionally, this proposal is related to the existing discussion #4195 about editing multiple locales at once. A field-level switcher could be a great complementary feature or a simpler first step toward that larger goal.
Thank you for your excellent work on Payload and for considering this request.
Beta Was this translation helpful? Give feedback.
All reactions