it-swarm.com.de

Entfernen Sie unerwünschte Joomla-Skripte in der neugierigen Version 3.8.x, die nicht funktionieren

Ich frage mich nur, wie das passiert, vielleicht weiß jemand Bescheid:

Wie bekannt entferne ich unerwünschte Joomla-Skripte wie folgt:

$this->_script = $this->_scripts = array();

oder auf einfache Weise:

unset($this->_scripts[JURI::root(true).'/media/system/js/mootools-core.js']);

aber ich habe eine Joomla-Seite, wo dies keine Wirkung hat, trotzdem wurden Skripte geladen. Auch Skripte über einen zweiten Weg zu bekommen, hat keinen Erfolg:

$document = JFactory::getDocument(); 
$headData = $document->getHeadData();
$scripts = $headData['scripts']; 

wenn ich Skripte kurz vor dem Laden überprüfe, sind die Skripte in beiden Fällen leer und können natürlich nicht entfernt werden, aber sie werden mit dem HeadRenderer von Joomla geladen.

Ich kann dieses Problem lösen, indem ich meine eigene Datei kopiere, bearbeite und lade, basierend auf:\libraries\src\Document\Renderer\Html\HeadRenderer.php

aber es interessiert mich wirklich, was hier passiert. Es spielt keine Rolle, ob ich eine benutzerdefinierte Vorlage lade oder eine Joomla (Protostar) -Vorlage verwende, indem ich nur zu nicht gesetzten Skripten wechsle. Dieselben Problemskripte sind über $ this oder getDocument () leer. aber geladen in den Kopf HTML über <jdoc:include type="head" />

Irgendwie werden die Skripte nicht beim Template-Rendering sondern beim HeadRendering geladen? Versucht, alle Module und Plugins von Drittanbietern zu deaktivieren, aber keine Änderung ... Großes Fragezeichen für mich? Irgendwelche Ideen?

Prost!

4
SmokerCreep

Die Verwendung einer Vorlage zum Bearbeiten von Kopfdaten war noch nie korrekt. Verwenden Sie stattdessen ein System-Plugin mit dem Ereignis onBeforeCompileHead.

https://docs.joomla.org/Plugin/Events/System#onBeforeCompileHead

2
Sharky