it-swarm.dev

Disabilita il caricamento degli script in testa

Come disabilito il caricamento di

  • mootools-core.js
  • core.js

Nel <head> senza utilizzare un componente/plug-in di terze parti?

8
web-tiki

Sto usando Joomla 3.2, in cima al mio clima ho messo:

$doc = JFactory::getDocument();

$dontInclude = array(
'/media/jui/js/jquery.js',
'/media/jui/js/jquery.min.js',
'/media/jui/js/jquery-noconflict.js',
'/media/jui/js/jquery-migrate.js',
'/media/jui/js/jquery-migrate.min.js',
'/media/jui/js/bootstrap.js',
'/media/system/js/core-uncompressed.js',
'/media/system/js/tabs-state.js',
'/media/system/js/core.js',
'/media/system/js/mootools-core.js',
'/media/system/js/mootools-core-uncompressed.js',
);

foreach($doc->_scripts as $key => $script){
    if(in_array($key, $dontInclude)){
        unset($doc->_scripts[$key]);
    }
}

Ciò impedisce di includere quegli script, aggiungere o rimuovere script secondo necessità

18
ContextSwitch

Puoi disinserirlo nel modello

unset(
  $this->_scripts['/media/jui/js/mootools-core.js'],
  $this->_scripts['/media/jui/js/core.js']);

Ciò rimuoverà entrambi i file JS dall'intestazione.

5
Harald Leithner

In Joomla 3.x, puoi chiamare JHtml::_('jquery.framework') nel tuo modello per caricare jQuery senza Mootools. Questo carica jQuery in modalità senza conflitto per impostazione predefinita, quindi se hai bisogno della modalità normale, aggiungi un secondo parametro di false : JHtml::_('jquery.framework', false).

http://docs.joomla.org/J3.2:Javascript_Frameworks

4
flutterderp

Ho usato questo:

foreach ($doc->_scripts as $script => $value)
{
    if (preg_match('/media\/jui/i', $script))
      unset($doc->_scripts[$script]);
}
2
Aerendir

La soluzione di @ContextSwitch non funzionava per me a causa del caricamento di alcuni script dopo l'elaborazione del modello, quindi il disinserimento dei file in quella fase non ha avuto alcun effetto su tali file.

Quindi ho dovuto implementare la soluzione simile ma usando un semplice plugin associato all'evento onBeforeCompileHead. Come descritto da me qui .

0
Mohd Abdul Mujib