Collection, Dynamic Content In SP Builder, For Multilangual Websites - Question | JoomShaper
Black Friday sale is live with flat 50% OFF. Sale ends soon! Grab your deal now!

Collection, Dynamic Content In SP Builder, For Multilangual Websites

S-D CONSULTING

S-D CONSULTING

SP Page Builder 1 week ago

I have a problem: using Dynamic Content with a multilingual website.

I'm sharing this experience because I've found a solution, and it works, but I'd like to know if there are plans for greater integration and functionality for multilingual projects using collections in the future.

I have some real estate listings. My goal was to create listings where the dynamic fields are sometimes unique (for example, the image gallery), while in other cases it's necessary to have a field for each language (for example, the description).

Unfortunately, the /slug page routing isn't working well at the moment, because if I create a collection, I can only create one "index" page and one "slug" page.

The other problem was the SEF URLs.

The only way to do this was to use a RegularLabs project (Conditional Content), which allows fields to be displayed based on a condition—in my case, the browser language.

The logic is to use: {show languages="en-gb"} Dynamic content in English {/show} {show languages="de-de"} Dynamic content in German {/show}

It works well, especially because the content that isn't relevant to the language isn't even in the page's HTML code, and therefore doesn't compromise SEO.

Has anyone had similar experiences and approached the problem differently?

Those who tell me to create a collection for each language should refrain, because it's a basic approach that requires repeating fields that can be unique for each language (see galleries, descriptions, etc.).

Thanks

0
5 Answers
Atick Eashrak Shuvo
Atick Eashrak Shuvo
Accepted Answer
Support Agent 1 week ago #211134

Hello,

Thank you for your detailed explanation. I now understand your point more clearly.

In Joomla, the recommended multilingual workflow is indeed to create separate items for each language, and this is not considered a “wrong” process. The reason for this approach is how Joomla handles multilingual content at its core:

  • Each content item in Joomla is associated with a specific language.
  • Joomla uses Associations to link the same content across different languages.
  • This ensures proper language routing, SEF URLs, and SEO, as each page corresponds to a unique URL for its language.

For example, if you look at Joomla Articles: even if the article content is mostly the same across languages, Joomla requires a separate article per language. You can then use Associations to link the articles together. This allows Joomla to automatically display the correct language version based on the user’s selection or browser language.

The same principle applies to Dynamic Content collections: each item per language ensures that URLs, language routing, and SEO remain fully functional. While it may seem repetitive for fields that don’t change (like a photo gallery), this approach is consistent with Joomla’s multilingual architecture and ensures full compatibility with all multilingual features.

I understand this can feel cumbersome for fields that are identical across languages. Workarounds like Regular Labs’ Conditional Content are valid solutions, especially for fields that are truly shared, but Joomla’s standard method ensures the site remains robust and SEO-friendly across all languages.

In short, creating separate items per language is not “wrong”; it is how Joomla reliably handles multilingual content while maintaining proper routing and SEO.

Best regards

0
S-D CONSULTING
S-D CONSULTING
Accepted Answer
1 week ago #211140

Okay, thank you for your reply. Having been part of the Joomla team for many years, I understand its dynamics and its development. I have a certain mastery of the medium, and with the use of HELIX and SP Page Builder, I've been able to make significant progress on all my projects where custom programming isn't required.

I understand the issue of maintaining correct routing, which is completely understandable; in a case like mine, unfortunately, it becomes cumbersome and a waste of time.

With Conditional Content, you can keep your site properly SEO-friendly.

I've seen other approaches, but they worked on the CSS by hiding content in the non-target language, but this is counterproductive for SEO, since bots also read text hidden by "display:none."

At this point, I'd like to suggest my own hypothesis: adding the ability to set the language on the field (such as a title or gallery) would be the ideal solution.

0
Atick Eashrak Shuvo
Atick Eashrak Shuvo
Accepted Answer
Support Agent 1 week ago #211148

Thank you for your thoughtful feedback and for sharing your experience. It’s clear you have a deep understanding of Joomla, Helix, and SP Page Builder, and your approach with Conditional Content makes perfect sense in the context of SEO-friendly multilingual sites.

We completely understand your point regarding the current limitation: having to duplicate fields or items for each language can indeed become cumbersome, especially for fields that remain the same across languages, such as galleries or shared media.

Your suggestion—allowing the ability to assign a language directly to individual fields—is a valuable idea. It would give more flexibility for multilingual content while reducing duplication and maintaining proper SEO and routing.

I will forward your feedback to our development team for consideration as a potential enhancement in future updates. In the meantime, using Conditional Content as you have implemented remains a solid solution, particularly for scenarios where content is largely shared across languages.

We truly appreciate your insight and contribution; suggestions like yours help us improve the tools for advanced multilingual use cases.

0
Atick Eashrak Shuvo
Atick Eashrak Shuvo
Accepted Answer
Support Agent 1 week ago #211126

Apologies for the inconvenience. Please follow the process below. Before proceeding, make sure your site is properly configured for multilingual functionality. You can follow this guide: “How to create a multilingual site in Joomla 4 using Helix Ultimate” https://www.joomshaper.com/blog/how-to-create-a-multilingual-site-in-joomla-4-using-helix-ultimate


1. Create your Dynamic Content Collection

After your multilingual setup is complete, create your collection as usual.

2. Add items to the collection

When your site is multilingual, each collection item allows you to assign a language: ➡️ Screenshot: https://prnt.sc/Kkeg2k-4876v

For every item, make sure to add Associations, exactly the same way Joomla Articles work. This allows you to link the same item across multiple languages.


3. Create the Collection Index and Details pages

Build your index page according to your design.

Then set the page Language to “All”: ➡️ Screenshot: https://prnt.sc/iEG3hHl8aa--

Do the same for the details page (item page).

Setting the page language to “All” ensures that the same page can serve items from every language.


4. Add the pages to the frontend

Create a separate menu item for each language on your site. Assign each menu item to the same Index Page of the collection.


How does one page handle multilingual items?

Because the page is set to Language = All, the routing system detects the active menu language and automatically loads only the items that match that language. So a single index page + a single details page can dynamically serve English, German, French, etc.—as long as the items are properly assigned and associated.

0
S-D CONSULTING
S-D CONSULTING
Accepted Answer
1 week ago #211130

Hi, I invite you to reread what I've explained carefully. You're showing me how to manage a multilingual site by creating (in my case, we're talking about 4 languages) a collection for each language.

That's the simple part; it obviously works.

However, I've explained a different problem. And I've given the example of a real estate site.

If my collection has fields that aren't translated, following your instructions, I still have to create these fields 4 times, one for each language, and that's the wrong procedure.

For example, consider the photo gallery: I have 15 images for each property. If I have to create 4 collections, I have to repeat the image insertion process 4 times, when there can only be one gallery field.

I've solved the problem so far by using Regular Labs' Conditional Content, which allows me to read based on the browser's content, without hiding any text in the code that would penalize my SEO.

Perhaps an alternative would be to create a separate collection for galleries (and all those parts of the property that don't change, but there are many), but this would require me to create too many reports because I would have to repeat the property in each dedicated collection, and then associate them with each other.

What I'm asking is for a solution where the language can be directly associated with the field.

In your book example, as you can see, you have several fields, but they're all associated with the same language. Imagine you need to insert the cover or multiple images of the same book. You'd have to repeat the gallery for each language, and this would apply to all fields, which are the same regardless of language.

I hope I've explained the problem you're encountering better.

0