Hallo,
ich habe eine userFunc, die mir einen Wert zurückgibt. Diesen kann ich dann beispielsweise dem PAGE-Objekt zuweisen.
temp.info = USER
temp.info.userFunc = user_functions->myFunctionWhichReturnsSomething
page.10 < temp.info
Das funktioniert bis hierhin auch prima! Jetzt habe ich aber vor, einen Marker im Content, welcher von beispielsweise einem Redakteur mittels ###VALUE### in einem Text eingepflegt wurde, zu ersetzen. Dazu habe ich bereits folgenden Codeschnipsel gefunden:
lib.parseFunc.constants = 1
lib.parseFunc_RTE.constants < lib.parseFunc.constants
constants.VALUE = 12345
Funktioniert auch noch. Folgendes jedoch wird mir verwehrt:
lib.parseFunc.constants < tmp.info
Da ich in Typo3 neu bin, frage ich mich natürlich, warum das eine klappt, das andere aber nicht? Hat jemand eine Lösung?
Müsste es analog zu deinem Beispiel
lib.parseFunc.constants = 1
lib.parseFunc_RTE.constants < lib.parseFunc.constants
constants.VALUE = 12345
dann nicht so aussehen?
lib.parseFunc.constants = 1
lib.parseFunc_RTE.constants < lib.parseFunc.constants
constants.VALUE < temp.info
Genau. Wobei das nicht klappen dürfte, weil constants.[Array] nur den Typ String akzeptiert. Dann würde ###VALUE### wahrscheinlich durch den String "USER" ersetzt werden.
lib.parseFunc.constants = 1
lib.parseFunc_RTE.constants < lib.parseFunc.constants
ist übrigens nichts anderes als
lib.parseFunc_RTE.constants = 1
Das nur zur Vereinfachung.
Dann bekomm ich also wie genau meinen Wert aus "tmp.info"? Im Moment steht da tatsächlich nur "USER", so weit war ich ja leider schon.
Hi, das hier hab ich auch noch entdeckt, hilft leider aber auch nicht weiter:
page {
stdWrap.parseFunc.short {
VALUE < temp.info
}
}
Die Extension "int_constants_stdwrap" war die Lösung!