Manage events for multilingual site

Hi everyone,

I’m currently building a multilingual website using ConcreteCMS version 9.3.9, and I’m using the native “Calendar and Events” feature to manage upcoming events.

I understand that events are tied to a specific calendar, but I haven’t found a practical way to manage translated versions of each event. For now, the only workaround I see is to create a separate calendar for each language (e.g., one for French, one for English, one for German), and duplicate each event manually—but this feels inefficient and hard to maintain.

:point_right: Is there a recommended or more elegant way to handle multilingual events in ConcreteCMS?

Ideally, I’d like to:

  • Reuse the same calendar view in different languages,
  • Display translated event content depending on the active language,
  • Avoid having to manually manage multiple calendars for the same set of events.

Any insight, best practices, or custom solutions would be greatly appreciated. Thanks in advance!

Hey @tacktack – your best option is probably to do what you initially considered: create multiple calendars with each calendar representing a different language, then use that calendar in the frontend of your website on the different language trees. Yes, this will require more hands-on management of the content, since you’ll have to manually keep the calendars in sync. Hopefully the “Duplicate Event” functionality in the core will help. For example, you can take an event in your English events calendar and duplicate it into another language, and then edit the events there.

1 Like

One thing you could do is create custom attributes for each language then show them using different templates or the same template but just use the language functions concrete has.

So create french title, french description etc and then show these instead of the default title and description.

Hi @andrew ,
Yes, I did that. The “Duplicate event” feature is really handy. One key thing that could be improved is to clean up the link to the original page on the duplicated event. There’s a github post about it Duplicating Event Maintains Link to Original Event Page · Issue #12509 · concretecms/concretecms · GitHub

I have 15 text type attributes and 3 languages. This doesn’t seem like a good idea with a lot of attributes.

Its no different to duplicating the event. Just means you have it all in one place.

But multiple calendars might be easier.

1 Like