Блог старого компьютера

Блог старого компьютера


Главная Joomla Заменяем mootools на jquery в joomla

Заменяем mootools на jquery в joomla

06.03.2013 02:07 Администратор Joomla
Печать PDF
Все мы прекрасно знаем что вся админка joomla 1.5 построеная на базе mootools, да и не только админка, пользовательская часть тоже подгружает эту библиотеку по умолчанию. И отключить ее просто так не удастся. Но главное не это. Зачем нам mootools в пользователской части сайта если у нас ни один модуль на сайте и плагин не использует его (в этом надо быть уверенными так как многие компоненты работают как раз на базе него). Лично у меня эти библиотека не используется. Как ее убрать с целью повысить скорость сайта я писал тут.

Так как многие думаю строят свою пользовательскую часть движка joomla на jquery (к таким людям отношусь я) то давайте уберем оттуда mootools, а на его высокое величавое место поставим jquery. Тем более что если мы просто поставим jquery то с mootools возмодно возникнет какой нибудь конфликт.

Вы скажете почему бы просто не убрать mootools и с помощью addScript добавить библиотеку jquery. В чем то вы будете и правы, но если вы планируете строить пользовательску часть на именно jquery то желателно чтоб он подгружался выше всех остальных скриптов, а для этого как раз подходит место mootools.

Для этих целей давайте доработаем php код который необходимо будет вставить в шаблон вашего сайта. За базу возьмем тот код из этой темы.

И превратим его вот в такой:

$user =&JFactory::getUser();
if ($user->get('guest') == 1){
$headerstuff = $this->getHeadData();
$scripts = $headerstuff['scripts'];
$headerstuff['scripts'] = array();
foreach($scripts as $url=>$type) {
if (strpos($url, 'js/caption.js') === false) {
 $url = str_replace('/media/system/js/mootools.js', '/templates/jaju/js/jquery.min.js', $url);
$headerstuff['scripts'][$url] = $type;
}
}
$this->setHeadData($headerstuff);
}

 Ничего космического код представленый выше не совершает. А делает он вот что. Проверяет гость вы или авторизированый пользователь. Если гость то обходит циклом все скрипты в хедере и убирает caption.js, а если ему на пути попадается mootools то заменяет его урл на урл к jquery.

Вот сообвтсенно и все. Проверка на гостя и юзера сделана с целью того чтоб сохранить работоспособность админки в которой все таки используется mootools без которого даже меню работать не будет.

Добавить комментарий


Защитный код
Обновить

Поиск

Голосование

Что Вы думаете на счет битрикса?
 

Все материалы раздела