Микроблог

Joomla: удалить hasTooltip и ненужные js

Убираем лишние js и вызов hasTooltip из head в движке joomla 3.0+. Это часто нужно в целях облегчения страницы, — влияет на скорость загрузки сайта, а также оказывает благотворное действие на оценку сайта поисковиками.

hasTooltip — путь внутренней категории в файловой системе joomla:

libraries/cms/html/bootstrap.php

Посадка tooltip происходит в строке (~474):

// Attach tooltips to document
                        JFactory::getDocument()->addScriptDeclaration(
                                "jQuery(document).ready(function()
                                {
                                        jQuery('" . $selector . "').tooltip(" . $options . ");
                                });"
                        );

Удаляем эти строки или слешируем.

Один из популярных и изведанных способов блокировать загрузку ряда ненужных js в шаблоне — прописание следующего кода в head страницы. Путь:

templates/{имя_шаблона}/index.php

$headlink = $this->getHeadData();
unset($headlink['scripts']['/media/system/js/caption.js']);
unset($headlink['scripts']['/media/system/js/validate.js']);
unset($headlink['scripts']['/templates/protostar/js/template.js']);
unset($headlink['scripts']['/media/jui/js/jquery.min.js']);
unset($headlink['scripts']['/media/jui/js/jquery-migrate.min.js']);
unset($headlink['scripts']['/media/jui/js/bootstrap.min.js']);
unset($headlink['scripts']['/media/jui/js/jquery-noconflict.js']);
$this->setHeadData($headlink);

Я подскажу, как удалить подгрузку этих js-скриптов в php-файлах системы joomla.

Путь:

libraries/cms/html/html.php

ищем функцию «public static function script» (~672)

Находим чуть ниже:

$includes = static::includeRelativeFiles('js', $file, $relative, $detect_browser, $detect_debug);

Заменяем на:

if(strpos($_SERVER['REQUEST_URI'],'administrator/')){ $includes = static::includeRelativeFiles('js', $file, $relative, $detect_browser, $detect_debug);   }

* Примечание: Правильная работа административной части (урл содержит адрес ‘administrator/’) требует загрузки скриптов. Поэтому определяем условия подгрузки: если в урле присутствует ‘administrator/’, осуществляем подгрузку. Если нет — ничего не подгружаем.

 

 

Этот материал опубликован в Микроблог и тегирован , , . Bookmark the permalink.

Один отзыв на Joomla: удалить hasTooltip и ненужные js

  1. Рус говорит:

    Класс! Спасибо большое.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>