DUPLICATE: Nestable Slider (Splide): i18n translations parsed but never passed to new Splide() — arrows/pagination keep English aria-labels

Browser: Brave (Chromium-based, latest)
OS: Windows
URL: https://vallardi.alex-web.it/

Description

The Nestable Slider’s accessibility labels (arrows, pagination) are not translated, even though the site locale is set to Italian. Inspecting the next/prev arrows on the slider at the URL above shows aria-label="Next slide" / "Previous slide" in English instead of the expected Italian translation.

Steps to replicate

  1. Set WP site language to a non-English locale (e.g. Italian).

  2. Add a Nestable Slider element with default arrows/pagination enabled.

  3. Publish and view on frontend.

  4. Inspect the .splide__arrow--next / .splide__arrow--prev elements.

  5. aria-label shows the English default instead of the locale’s translation.

I tried updating the i18n option on the existing Splide instance after mount (via window.bricksData.splideInstances) and also calling .refresh(), but neither changes the already-rendered aria-label attributes on the arrows.

Possible lead (not sure if relevant)

While poking around in frontend.min.js I noticed the bricksSplideFn initializer builds a translated i18n object from bricksData.i18n before mounting, but I couldn’t tell if that object actually makes it into the new Splide(...) call or not. Might be worth a look, but I don’t know the codebase well enough to say for sure that’s the cause. Happy to share more details if useful.

Hey @AlexKingAx,

looks like this is the same issue like reported here: WIP: Splide controls aria translations are not used

Hence, I’m marking it as a duplicate, linking it to our internal task, and closing it. Once we resolve this issue, we’ll post a reply to the topic mentioned above.

Best regards,
Matej

1 Like