Eu recebo um erro de 500 com JHtmlBehavior::mootools not found
. Sei que isso foi removido no J3, mas meu problema está tentando descobrir onde está esse problema.
Suspeito que seja algum tipo de extensão, mas acho que atualizei todas elas. Obviamente não. Não vejo nada nos meus logs php ou no console das ferramentas do desenvolvedor para indicar onde o problema pode estar. Eu até grep para JHtmlBehavior e não tenho nada.
Alguma dica de como eu posso depurar isso?
fonte
JOOMLAROOT/templates/YOURTEMPLATE/index.php
? Você pode adicioná-lo diretamente depoisdefined('_JEXEC') or die;
. Verifique se o MooTools foi carregado digitandowindow.MooTools
no Firebug, ele deve retornarObject { version: "1.4.5", build: "74e34796f5f76640cdb98853004650aea1499d69" }
ou similar.JHtml::
chamadas não interromperá o erro, que é o resultado de uma chamada inválida no PHP no site em algum lugar.Este é um erro do PHP que resulta no Joomla gerando um erro, portanto, não é um erro de Javascript e não deve ser corrigido adicionando mais PHP. Como você suspeitava, precisava encontrar a fonte da chamada PHP incorreta.
A primeira coisa a fazer é aumentar o relatório de erros para "Desenvolvimento" e ver que fornece novas informações, se não houver novas informações que o ajudem a rastrear a origem do erro, ele se tornará a abordagem manual de fatia e dados.
Tente trocar brevemente para um modelo interno e verificar se o problema desaparece - se isso acontecer, é o modelo ou um módulo que não é mais chamado porque sua posição atribuída não existe no modelo padrão para o qual você trocou. Se não for o modelo, você poderá rastrear os módulos rapidamente.
Por fim, se isso não ajudar, use o método de 50% para restringir rapidamente qual grupo de componentes, módulos ou plugins é a fonte do problema.
fonte
Aqui estão algumas etapas para descobrir de onde vem o código:
Bem, a melhor maneira é fazer o download de uma cópia completa do site e fazer uma pesquisa no sistema OS dentro de seu diretório por JHTML :: _ ('behavior.mootools'); . Normalmente, o seu computador retornará uma lista com todos os arquivos que contêm essa sequência específica.
Se a primeira etapa não for possível ou você não conseguir nenhum resultado por qualquer motivo, comece a desativar as extensões.
uma. Primeiro mude o modelo - para o modelo principal do Joomla 3 protoestrela. Se o problema desaparecer com maior probabilidade, é o seu modelo que contém o código obsoleto.
b. Então você pode começar a desligar os módulos e plugins.
c. Por fim, verifique se o problema parece estar apenas em páginas específicas de componentes de terceiros.
Encontre mais informações sobre como carregar estruturas Javascript no Joomla na documentação do Joomla
fonte