Po świeżej instalacji albo aktualizacji z Joomla 1.7 do 2.5 niektórzy użytkownicy otrzymują przy instalacji komponentów komunikat mówiący o problemie z tworzeniem pozycji MENU w bazie danych. Komunikat występuje także w przypadku MENU > MENU MANAGER i ikony REBUILD (przebuduj). Poniżej zamieszczam procedurę naprawy błędów na następujące komunikaty:
Call to undefined method MenusModelItem::getMessage() in
JTableMenu: :_getNode Failed -
Należy zalogować się do bazy danych MYSQL najczęściej przez panel PhpMyAdmin - dane bazy danych do logowania są zawarte w pliku configuration.php w głównym katalogu Joomla. Po zalogowaniu należy wybrać naszą bazę danych następnie wpisać komendę w polu SQL:
INSERT INTO `NAZWA_BAZY_DANYCH`.`PRZEDROSTEK_menu` (`id` ,`menutype` ,`title` ,`alias` ,`note` ,`path` ,`link` ,`type` ,`published` ,`parent_id` ,`level` ,`component_id` ,`ordering` ,`checked_out` ,`checked_out_time` ,`browserNav` ,`access` ,`img` ,`template_style_id` ,`params` ,`lft` ,`rgt` ,`home` ,`language` ,`client_id` ) VALUES ( '1', '', 'Menu_Item_Root', 'root', '', '', '', '', '1', '0', '0', '0', '0', '0', '0000-00-00 00:00:00', '0', '0', '', '0', '', '0', '0', '0', '*', '0')w powyższym przykładzie musimy podmienić NAZWA_BAZY_DANYCH na nazwę naszej bazy oraz PRZEDROSTEK na powtarzalny przedrostek tabeli np. m9tfw. Ten przedrostek jest nadawany każdorazowo przy tworzeniu bazy danych i zazwyczaj jest niepowtarzalny. W poprzedniej wersji Joomla 1.5 był to przedrostek jos_
Po wklejeniu poprawnej wartości w polu formularza SQL (zobacz zrzut ekranu powyżej) klikamy WYKONAJ i jeśli zapytanie zostało wykonane poprawnie, utworzyliśmy brakujący wpis w bazie powodujący błąd.
Teraz musimy zalogować się do panelu administracyjnego Joomla. Wejść do MENUS > MENU MANAGER i kliknąć guzik REBUILD przebuduj. Wszystko będzie działało poprawnie.
Jeśli mieliśmy problem wcześniej mieliśmy np. problem z instalacją JCE, to proponuję zainstalować ponownie wszystkie komponenty do których brakuje nam MENU w panelu administracyjnym.