it-swarm-es.tech

Deshabilitar la carga del script en la cabeza

¿Cómo desactivo la carga de

  • mootools-core.js
  • core.js

En <head> sin usar un componente/complemento de terceros?

8
web-tiki

Estoy usando Joomla 3.2, en la parte superior de mi plantilla pongo:

$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]);
    }
}

Esto evita que se incluyan esos scripts, agregue o elimine scripts según sea necesario

18
ContextSwitch

Puedes desarmarlo en la plantilla

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

Esto eliminará los dos archivos JS del encabezado.

5
Harald Leithner

En Joomla 3.x, puede llamar a JHtml::_('jquery.framework') en su plantilla para cargar jQuery sin Mootools. Esto carga jQuery en modo sin conflicto de manera predeterminada, por lo que si necesita el modo normal, simplemente agregue un segundo parámetro de falso : JHtml::_('jquery.framework', false).

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

4
flutterderp

He usado esto:

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

La solución de @ContextSwitch no funcionó para mí debido a que algunos scripts se estaban cargando después de que se procesó la plantilla, por lo que la eliminación de los archivos en esa etapa no tuvo ningún efecto en esos archivos.

Así que tuve que implementar una solución similar pero usando un complemento simple vinculado al evento onBeforeCompileHead. Según lo descrito por mí aquí .

0
Mohd Abdul Mujib