Otrzymuję błąd 500 z JHtmlBehavior::mootools not found
. Wiem, że zostało to usunięte w J3, ale mój problem próbuje dowiedzieć się, gdzie jest ten problem.
Podejrzewam, że jest to jakieś rozszerzenie, ale myślę, że zaktualizowałem je wszystkie. Oczywiście, że nie. Nie widzę nic w moich dziennikach php ani konsoli narzędzi programistycznych, aby wskazać, gdzie może być problem. Nawet pozdrawiam JHtmlBehavior i nic nie wymyślę.
Wszelkie wskazówki, jak mogę to debugować?
źródło
JOOMLAROOT/templates/YOURTEMPLATE/index.php
? Możesz dodać go bezpośrednio podefined('_JEXEC') or die;
. Sprawdź, czy MooTools został załadowany, wpisującwindow.MooTools
Firebug, powinien zwrócićObject { version: "1.4.5", build: "74e34796f5f76640cdb98853004650aea1499d69" }
lub podobny.JHtml::
wywołań nie zatrzyma błędu, który jest wynikiem nieprawidłowego wywołania w PHP gdzieś na stronie.Jest to błąd PHP, w wyniku którego Joomla zgłasza błąd, więc nie jest to błąd Javascript i nie można go naprawić przez dodanie większej liczby PHP. Jak podejrzewasz, musisz znaleźć źródło błędnego wywołania PHP.
Pierwszą rzeczą, którą należy zrobić, to zmienić raportowanie błędów na „Rozwój” i zobaczyć, że daje to nowe informacje, jeśli nie ma żadnych nowych informacji, które pomogłyby w wyśledzeniu źródła błędu, wówczas staje się to ręczne podejście do wycinania i kostki.
Spróbuj zamienić na krótki czas wbudowany szablon i sprawdzić, czy problem zniknie - jeśli tak, to albo szablon, albo moduł nie jest już wywoływany, ponieważ przypisana pozycja nie istnieje w domyślnym szablonie, na który się zamieniłeś. Jeśli nie jest to szablon, możesz dość szybko wyśledzić moduły.
Wreszcie, jeśli to nie pomoże, użyj metody 50%, aby szybko zawęzić grupę komponentów, modułów lub wtyczek.
źródło
Oto kilka kroków, aby dowiedzieć się, skąd pochodzi kod:
Najlepszym sposobem jest pobranie pełnej kopii strony internetowej i przeszukanie systemu operacyjnego w jej katalogu w poszukiwaniu JHTML :: _ ('behawior.mootools'); . Zwykle komputer zwraca listę ze wszystkimi plikami zawierającymi ten konkretny ciąg.
Jeśli pierwszy krok nie jest możliwy lub nie możesz uzyskać żadnych wyników z jakiegokolwiek powodu, powinieneś zacząć wyłączać rozszerzenia.
za. Najpierw przełącz szablon - na podstawowy szablon prototypu Joomla 3. Jeśli problem najprawdopodobniej zniknie, to szablon zawiera przestarzały kod.
b. Następnie możesz zacząć wyłączać moduły i wtyczki.
do. Na koniec sprawdź, czy problem występuje tylko na określonych stronach komponentów innych firm.
Znajdź więcej informacji o ładowaniu frameworków JavaScript na Joomla w dokumentacji Joomla
źródło