Отключить Mootools для 3.3?


10

Мне нужно обновить сайт Joomla 2.5 до 3.x

На сайте используется плагин "отключить Mootools"

от этого разработчика union-d.ru/

Кто-нибудь успешно использует этот плагин на 3.3 или знает плагин с аналогичной функциональностью для 3.3? Спасибо - разработчик не отвечает на мои вопросы ...

Кто-нибудь успешно использует этот плагин на сайте 3.x? Или знаете другой, похожий плагин, который работает на 3.x? Спасибо!

Ответы:


6

Этот инструмент отключит Mootools при необходимости и совместим с Joomla 3: http://extensions.joomla.org/extensions/core-enhancements/performance/mootools/22236

В Joomla 3.0 MooTools устарела, а jQuery является фреймворком javascript по умолчанию. Для добавления библиотек MooTools Core вам необходимо добавить:

JHTML::_('behavior.framework');

Таким образом, от вашего шаблона / расширений зависит, загружен Mootools или нет.

В консоли разработчика Google Chrome (и, возможно, в Firefox Firefox) вы можете проверить, включен ли MooTools с помощью этого небольшого кода JavaScript:

window.MooTools ? alert ("MooTools loaded") : alert("MooTools NOT loaded");

Прошло несколько лет, но ответ все еще действителен и работает для Joomla 3.8. *
BastianW

2

Этот плагин специально для Joomla 2.5, поэтому при использовании его на Joomla 3.x может быть некоторый устаревший код. Я бы лично порекомендовал использовать jQuery Easy, который пользуется высокой репутацией. Его основной функцией является импорт jQuery на ваш сайт и обеспечение его загрузки только один раз и в верхней части списка сценариев, а также возможность отключения MooTools, где это возможно.


1

Плагин для управления встроенными библиотеками Joomla. Основные параметры: отключить Mootools, отключить Jquery, отключить Bootstrap https://github.com/vlasenkofedor/joomla_options


Это определенно лучшее решение. Я использую его с Joomla 3.6. Будьте здоровы! Спасибо огромное! Этот плагин потрясающий.
Peesen87

0

Если вы разрабатываете плагин, а onAfterRenderсобытие НЕ работает, попробуйте использовать событие, onBeforeCompileHeadкак показано ниже.

public function onBeforeCompileHead() {
    if ($this->app instanceof JApplicationSite) {
        $doc = JFactory::getDocument();
        $search     = array(
            'jui/js/bootstrap.min.js',
            'mootools-core.js',
            'mootools-more.js',
        );
        foreach ($doc->_scripts as $key => $script) {
            foreach ($search as $findme) {
                if (stristr($key, $findme) !== false) {
                    unset($doc->_scripts[$key]);
                }
            }
        }
    }
}
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.