J'utilise ces lignes pour supprimer les scripts d'en-tête de Joomla. Je n'en ai pas besoin:
$doc = JFactory::getDocument();
$dontInclude = array(
'/media/jui/js/bootstrap.min.js'
);
foreach($doc->_scripts as $key => $script){
if(in_array($key, $dontInclude)){
unset($doc->_scripts[$key]);
}
}
Tout fonctionne correctement dans toutes les pages, sauf celles qui pointent vers un composant personnalisé. Il n'y a pas de substitution de tête dans mon composant et le cache est désactivé.
J'utilise Joomla 3.3.3
Edit: Si j'imprime l'objet document à partir de mon composant, scripts est un tableau vide ...
Merci d'avance
Vous devriez probablement le faire dans un plug-in système utilisant l'événement onBeforeRender. À ce stade de l'exécution, la page est sur le point d'être affichée. Les scripts doivent donc être en place.
Quelque chose comme ça:
function onBeforeRender() {
$doc = JFactory::getDocument();
$dontInclude = array(
'/media/jui/js/bootstrap.min.js'
);
foreach($doc->_scripts as $key => $script){
if(in_array($key, $dontInclude)){
unset($doc->_scripts[$key]);
}
}
}