After upgrading a multilingual Joomla website from 6.1.4 to 6.2.0, the Language Switcher no longer redirects visitors to the associated page in the other language.
Instead, it always generates a link to the homepage of the selected language.
The issue occurs in both directions (French → German and German → French).1.
Steps to reproduce
6.2
Clicking on the German or French flag should open the corresponding associated menu item.
The Language Switcher generates a link to the homepage of the selected language instead of the associated menu item.
Joomla version:
Production environment (working):
Local MAMP environment (not working):
Multilingual configuration:
Steps performed:
Additional information:
I have tried on two different installations of the same website
| Labels |
Added:
bug
|
||
| Labels |
Added:
No Code Attached Yet
|
||
Thank you very much for taking the time to investigate and test this issue.
As I am using Gridbox on this installation I contacted Balbooa support, and they identified the cause of the problem in the Gridbox system plugin.
They provided a modified version of plugins/system/gridbox/src/Extension/Gridbox.php, in which the initialization logic was moved from the class constructor to the onAfterInitialise event.
I tested this modification on my local Joomla 6.2.0 installation, and I can confirm that the language switcher now works correctly, with menu item associations being properly resolved.
It appears that the issue was caused by an incompatibility between the Gridbox system plugin and Joomla 6.2.0, rather than a bug in Joomla itself.
Thank you again for your help and for the detailed testing.
The issue can now be closed.
Not so good, can you share the code where and what happens? Or is this extension public available?
The Gridbox update of the extension is not yet publicly available.
Balbooa support provided a modified version of the system plugin file:
plugins/system/gridbox/src/Extension/Gridbox.php
In the original version, the plugin initialization was performed directly in the class constructor:
public function __construct($subject, $config)
{
$this->dispatcher = $subject;
parent::__construct($subject, $config);
$app = Factory::getApplication();
// Gridbox initialization...
}
In the corrected version, Balbooa removed this constructor and moved the initialization logic to:
public function onAfterInitialise(): void
{
if (!Factory::getApplication()->isClient('site')) {
return;
}
// Gridbox initialization...
}
I hope this will help.
The Gridbox update of the extension is not yet publicly available but you can find the related post on the balbooa support forum (mentioning a downloadable corrective file) :
https://www.balbooa.com/help/forums/gridbox/problem-with-multi-languages-website-after-joomla-6-2-update
Balbooa support provided a modified version of the system plugin file:
plugins/system/gridbox/src/Extension/Gridbox.php
In the original version, the plugin initialization was performed directly in the class constructor:
public function __construct($subject, $config)
{
$this->dispatcher = $subject;
parent::__construct($subject, $config);
$app = Factory::getApplication();
// Gridbox initialization...
}
In the corrected version, Balbooa removed this constructor and moved the initialization logic to:
public function onAfterInitialise(): void
{
if (!Factory::getApplication()->isClient('site')) {
return;
}
// Gridbox initialization...
}
I hope this will help.
so can you confirm if this is a problem with Joomla core or with the extension
Based on my testing, the issue appears to be related to the Balbooa Gridbox extension rather than Joomla core.
The problem occurred after upgrading from Joomla 6.1.4 to 6.2.0, but Balbooa provided a fix that moves the plugin initialization logic from the class constructor to the onAfterInitialise event.
After applying this fix, the language switcher and menu item associations work correctly again on Joomla 6.2.0.
So I can confirm that the extension-side fix resolves the issue, although I cannot determine whether a change in Joomla 6.2.0 contributed to exposing the incompatibility.
Based on my testing, the issue appears to be related to the Balbooa Gridbox extension rather than Joomla core.
The problem occurred after upgrading from Joomla 6.1.4 to 6.2.0, but Balbooa provided a fix that moves the plugin initialization logic from the class constructor to the onAfterInitialise event.
After applying this fix, the language switcher and menu item associations work correctly again on Joomla 6.2.0.
So I can confirm that the extension-side fix resolves the issue, although I cannot determine whether a change in Joomla 6.2.0 contributed to exposing the incompatibility. Balbooa confirmed that this fix will be included in the next Gridbox update.
| Status | New | ⇒ | Closed |
| Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2026-10-17 16:52:01 |
| Closed_By | ⇒ | HLeithner |
thanks for sharing the code, so it's actually a wrong way the extension using the joomla api, you shouldn't do anything in the constructor since we can't guarantee when and if it's called.
I'm closing this issues now. Thanks for the report
Can not confirm the issue. In short, tried to associate article or to associate menu items or to associate both is working in 6.1.4 and in 6.2.0. Perhaps I am missing something?
Testing with JBT