Hi Leute,
da mir in dem anderen Thread niemand antwortet, versuch ich's nochmal direkt, mit 'nem anderen Topic... Ich hab 'n Wert in folgendem User-Feld, welchen ich in TS per Condition abfragen will:
$GLOBALS["TSFE"]->fe_user->getKey("user", "themeid");
Geht das überhaupt? Wenn ja, wie?
Danke!
Grüße,
Hendrik
Du kannst in Typoscript keine Funktionen aufrufen.
Trotzdem gibt es einen Weg, um das zu realisieren, hier wird das sehr gut erklärt:
https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/Index.html
Das hab ich auch schon gelesen, bin da nicht ganz schlau draus geworden...
Ich hab das Speichern des Wertes ja schon hinbekommen. Nur abgefragt kriege ich ihn per Condition noch nicht... Ich denke, daß das irgendwie mit userFunc funktioniert, aber da es das nicht tut, glaube ich, liegt es vielleicht daran, daß er die Funktion gar nicht findet...
Wie bekomme ich denn raus, ob in der TS Condition userFunc die richtige PHP-Funktion aufgerufen wird? Ein echo in der Funktion brachte leider nicht den gewünschten Erfolg.
Bau doch das Beispiel nach mit der "Hello World" Option. Da steht doch auch, wie man zu den Ausgaben kommt, detaillierter kann man das doch gar nicht beschreiben.
Hab's inzwischen gelöst... allerdings weiß ich natürlich nicht, ob's so korrekt ist. Ich hab die Funktion, die ich durch userFunc in der Condition antrigger jetzt in die ext_localconf.php implementiert... Funktioniert so. Aber ob's der korrekte Weg ist, das muss mir nochmal 'n Experte bestätigen.
Das script bindest Du durch dieses Statement ein, da steht ja auch der Pfad drin:
page.100 = PHP_SCRIPT
page.100.file = fileadmin/scripts/meinscript.inc
Okay, so geht's natürlich auch.
Das erfordert aber einen weiteren Punkt im TS der einzelnen Seiten (abgesehen von der Condition selbst). Dies soll aber als Extension vollständig eigentständig funktionieren.
Es funktioniert ja auch so, wie ich es nun gemacht habe (userFunc in ext_localconf.php). Ist halt nur noch die Frage offen, ob's für eigenständige Extensions die richtige Vorgehensweise ist.
Ich muss mal danke sagen, zwischendurch: Danke! 🙂