После обновления Joomla 2.5.11 до версии Joomla 2.5.13 у меня странным образом вылезла вот эта ошибка:

Fatal error: Cannot redeclare class JLanguageTransliterate in папка_моего_сайта/libraries/joomla/language/latin_transliterate.php on line 25

Вылавливание и устранение ошибки усложнялось тем, что она возникала не каждый раз, а периодически.

alt

Решено было устранять её в лоб. Итак, открываем упомянутый файл /libraries/joomla/language/latin_transliterate.php и меняем:

class JLanguageTransliterate
{
...
}

на

if (!class_exists('JLanguageTransliterate')) {
class JLanguageTransliterate
{
...
}
}

То есть, обратите внимание, мы всю конструкцию объявления класса заключили в дополнительный if с условием и фигурными скобками.

Comments   

0 # Гениально!Guest 2013-10-07 16:12
Уважущный респектище автору!
Reply | Reply with quote | Quote | Report to administrator
+1 # Проблема кроется в компоненте RSFirewallEcolora 2014-07-29 12:43
При отключении System - RSFirewall! Active Scanner класс JLanguageTransl iterate перестает использоваться. Проверено. Умылшенно искажал код файла /libraries/joom la/language/lat in_transliterat e.php и при отключении системного плагина файрвола всё ок. При включении - белый экран и ошибка в этом файле.

Можно конечно самому покопаться и исправить ошибку, но пока что написал разработчику. Чтобы они включили это исправление в релиз.
Reply | Reply with quote | Quote | Report to administrator

Add comment


Security code
Refresh