Erro: Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference
Esse erro ocorre em instalações do Joomla quando a versão do PHP utilizada (ex.: 5.3 em diante) não é totalmente compatível com funções antigas que esperavam parâmetros passados por referência.
Por que acontece? A sintaxe do PHP evoluiu e o uso de parâmetros passados por referência em certas funções deixou de ser aceito. Por isso, funções antigas como
buildXML(&$params)
precisam ser ajustadas para o formato atual.1. Arquivo a ser editado
Localize e abra o arquivo:
/home/username/public/modules/mod_mainmenu/helper.php
2. Linha com erro
No código, procure a função:
function buildXML(&$params)
3. Correção
Substitua pela forma compatível com o PHP mais atual:
function buildXML($params)
4. Resultado esperado
Após salvar a alteração, o aviso deixará de aparecer e o menu voltará a funcionar corretamente no Joomla.
Resumo: Se encontrar funções com parâmetros definidos como
(&$variavel)
, substitua por ($variavel)
. Isso corrige a incompatibilidade com versões modernas do PHP.