While running a multilingual Joomla 5.3.2 website on PHP 8.4.8, the following warnings appears in the server logs during normal frontend page access:
PHP Warning: Undefined array key "language" in /plugins/system/sef/src/Extension/Sef.php on line 122
Environment:
Joomla version: 5.3.2
PHP version: 8.4.8 (FPM under LiteSpeed)
Site setup: Multilingual site with SEF enabled
Plugin: System - SEF is enabled with default settings
Please let me know if further details are needed.
Labels |
Added:
No Code Attached Yet
|
Sounds good.
Iām getting the same warning.
Environment: Joomla version: 5.3.3, PHP version: 8.2.12
Fix: Update line 121 to:
if ($app->getLanguageFilter() && isset($parsedVars['language'])) {
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2025-08-21 19:17:25 |
Closed_By | ⇒ | Fedik |
Labels |
Added:
bug
|
Status | Closed | ⇒ | New |
Closed_Date | 2025-08-21 19:17:25 | ⇒ | |
Closed_By | Fedik | ⇒ |
Ah, sorry, I forgot my PR is for 6.0 š
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2025-08-21 20:01:25 |
Closed_By | ⇒ | richard67 |
The fix could be to extend the
if ($app->getLanguageFilter())
condition here https://github.com/joomla/joomla-cms/blob/5.3-dev/plugins/system/sef/src/Extension/Sef.php#L121-L124so it is
if ($app->getLanguageFilter() && isset($parsedVars['language'])) {
or maybe
if ($app->getLanguageFilter() && !empty($parsedVars['language'])) {
.@Hackwar What do you recommend?