Zum Inhalt springen

JavaScripts in Header schreiben...

Erstellt am 18. Dezember 2007 · 5 Antworten · letzte Antwort am 19. Dezember 2007

Tags: Frage

DerUnsympath ·

Hallo,

ich habe eine Extension erstellt, die ein BE-Modul enthält, und für den FE-Output nur die Library inkludiert. Ich würde nun gerne damit einen JS-Tag im Header beim FE-Seitenaufruf schreiben, aber irgendwie muss ich was vergessen haben..

In der main()-Funktion rufe ich Folgendes aus:

$jsCode = '<script src="'.t3lib_extMgm::siteRelPath($this->extKey).dirname($this->scriptRelPath).'/res/datei.js" type="text/javascript"></script>';
		$jsCode = t3lib_div::wrapJS($jsCode);
		$GLOBALS['TSFE']->additionalHeaderData[$this->extKey] = $jsCode;

Dennoch wird das <script nicht in den Header geschrieben...

Im Netz wird es irgendwie überall damit erklärt, aber bei mir tut sich nichts.

Hilfe, anyone?

Gruß

just2b ·

BE-Modul ist fürs Backend da, wenn du im FE was mit php inkludieren willst, dann nimm ein FE-Plugin oder eine userfunc o.ä

georg

DerUnsympath ·

Hallo georg,

hmm, ich habe ja auch ein FE-Plugin erstellt, lasse aber eben nur die Library inkludieren beim Rendern der Seiten. Es soll auf jeder Seite ein <script- Tag in den Header schreiben. Wenn ich es als Plugin zum Auswählen wähle, würde es ja nur als Contentelement erscheinen, was ich ja nicht will..

Steh ich aufm Schlauch? ;-)

edit. Was mir gerade noch auffällt, nicht dass du's missverstehst. Den additionalHeaderData-Aufruf starte ich in der main()-Funktion des FE-Codes... class.tx_ext_pi1.php ...

just2b ·

naja was erwähnst du dann das BE modul wenn es hier überhaupt nicht wichtig ist ^^

du kannst auch per TS dein plugin angeben

page.20 < plugin.tx_deineext_pi1
page.20.include = 1

und dann prüfst du eben in der ext auf $conf['include'] und machst nur dein include und gibst nichts zurück (return ''😉

georg

DerUnsympath ·

Naja, ich erwähnte es, weil ich eben ein FE- UND ein BE-Modul in einem Plugin erstellt habe, und ich dachte, dass es von Relevanz wäre, als Info für den potenziellen Hilfesteller. :-)

Im BE-Modul soll der Benutzer Einstellungen vornehmen können, die Ausgabe derer soll dann im FE erfolgen. Für den Anfang eben erstmal nur ein <script im Header. :-)

Ich werd deinen Tipp mal befolgen, und meld mich ggf. nochmal.

*böse guck* (das tat ich nur, um meinen Nutzernamen zu rechtfertigen)