Virer Mootools core et Mootools c’est économiser 300 ko par page (voir plus), soit en gros dans la plupart des cas la moitié du poids de la page !!! Mais cela a un prix. Il va falloir se priver de pas mal de chose, car mootools dans joomla il est partout. Historiquement mootools a été le choix de framework javascript par défaut. Problème maintenant il est largement dépassé (ça dépend pourquoi) par les jquery et compagnie. Tellement qu’on lui a même mis un bootstrap, un jquery à côté … A l’écriture de cet article la dernière version dans du 26 février 2012 (nous sommes le 11/10/2013). Alors pourquoi ne le vire t on pas. Tout simplement parce que la plupart des extensions fonctionnent avec (xmap,Hs Syntax Highlighter et bien d’autre …).
Il va donc falloir trouver leur équivalent en Jquery, ou autonome. En attendant si vous voulez essayer voici comment procéder:
J’ai vu cette astuce sur http://www.inmotionhosting.com/support/edu/joomla-25/302-disable-mootools-in-joomla-25
Il suffit d’ajouter le code suivant dans libraries/joomla/document/html/renderer/head.php dans la section // Generate script file links (dans au début foreach). En gros ce code dit, si une extensions (ou autre) demande à charger mootools, je ne l’écoute pas et je passe à la suite.
Vous imaginez bien que je vais pas vous laisser faire ça comme ça. Ben en fait je vais vous laisser faire car en Joomla 3 il n’est pas encore possible de faire de la surcharge de libraries sans installer un plugin qui n’existe pas encore à l’heure où j’écris cet article
Maintenant on va ajouter le code magique que voici :
// Code to disable mootools for your site (still loads it for your admin) // Written by Brad Markle w/ InMotionHosting.com /* $ex_src = explode("/",$strSrc); // var_dump( $ex_src); $js_file_name = $ex_src[count($ex_src)-1]; $js_to_ignore = array("mootools-core.js","mootools-more.js"); if( in_array($js_file_name,$js_to_ignore) AND substr_count($document->baseurl,"/administrator") < 1 AND $_GET['view'] != 'form') continue;
----
Dans le fichier ça donne ça
-----
// Generate script file links foreach ($document->_scripts as $strSrc => $strAttr) { // Code to disable mootools for your site (still loads it for your admin) // Written by Brad Markle w/ InMotionHosting.com $ex_src = explode("/",$strSrc); $js_file_name = $ex_src[count($ex_src)-1]; $js_to_ignore = array("mootools-core.js","mootools-more.js"); if( in_array($js_file_name,$js_to_ignore) AND substr_count($document->baseurl,"/administrator") < 1 AND $_GET['view'] != 'form') continue; $buffer .= $tab . '<script src="' . $strSrc . '"'; if (!is_null($strAttr['mime'])) { $buffer .= ' type="' . $strAttr['mime'] . '"'; } if ($strAttr['defer']) { $buffer .= ' defer="defer"'; } if ($strAttr['async']) { $buffer .= ' async="async"'; } $buffer .= '></script>' . $lnEnd; }
Maintenant à vous de trouvez les plugins, composants etc qui utilisent mootools. Bref la chasse à mootools est commencée.
Comments powered by CComment