Werte aus Frontend-Plugin in folgenden Marker einfügen.
| Autor | Nachricht |
|---|---|
|
Verfasst am: 05. 08. 2009 [14:58]
|
|
|
suit
Themenersteller
Dabei seit: 09.01.2007
Beiträge: 47
|
Hallo, folgendes Problem: ich hab' ein Frontend-Plugin in einer Seite eingebunden dessen main-Funktion (vereinfacht) so aussieht: PHP function main($content,$conf) {
$this->conf=$conf;
$this->pi_setPiVarDefaults();
$this->pi_loadLL();
$this->pi_USER_INT_obj=1;
$content= $this->cObj->data['tx_name_meinwert'];
return $content;
}Jetzt habe ich auf derselben Seite ein th_mailformplus eingebunden in dessen Template ein Marker ist Diese befülle ich aktuell per TypoScript etwa so: TYPOSCRIPT plugin.tx_thmailformplus_pi1.markers.meinmarker = TEXT plugin.tx_thmailformplus_pi1.markers.meinmarker.value = foobar Nun soll dieser Marker aber mit dem Rückgabewert des Plugins befüllt werden und die Ausgabe des Plugins ans Frontend unterdrückt werden. Wie gehe ich hier vor - bzw. mache ich ggf. etwas gänzlich falsch? Hintergrund: der normale Endbenutzer soll in dem Plugin einige Wert-Paare eintragen die an in mailformplus-gerechten HTML-Code konvertiert werden. Quasi ein einfach wartbares "include" mit Formularfeldern. |
|
Verfasst am: 05. 08. 2009 [15:18]
|
|
|
einpraegsam.net
Moderator
Dabei seit: 17.01.2005
Beiträge: 8607
|
Stichwort ist userFunc - du rufst in mailformplus kein TEXT Element sonder eine userFunc auf - that's it |
|
Verfasst am: 05. 08. 2009 [15:22]
|
|
|
wurgli
Dabei seit: 01.03.2006
Beiträge: 390
|
Hallo, hänge an der gleichen oder einer ähnlichen Stelle. Versuche dynamisch ein JS-File zu erstellen. Versuche das ganze über ein PAGE-Objekt bzw. typeNum zu lösen, komme aber momentan auch nicht weiter. TYPOSCRIPT tx_meineext = PAGE tx_meineext { typeNum = 1728 config { disableAllHeaderCode = 1 disablePrefixComment = 1 xhtml_cleaning = 0 admPanel = 0 } 10 = TEXT 10.value = Hallo weiß nicht weiter } und dann das ganze per TYPOSCRIPT page.headerData.1728 = TEXT page.headerData.1728.dataWrap = <script type="text/javascript" src="index.php?id={field:uid}&type=1728" />| reinzuhängen. Nur keine Ahnung wie ich an die Ausgabe im FE-Plugin komme. UID übergebe ich damit ich im Plugin weiß woher die Anfrage kommt und type frage ich natürlich vorher ab und leite es an die jeweilige Funktion weiter. |
|
Verfasst am: 05. 08. 2009 [15:30]
|
|
|
suit
Themenersteller
Dabei seit: 09.01.2007
Beiträge: 47
|
Funktioniert wunderbar. Danke. (Edit: die sache mit userFunc) Sieht jetzt so aus: plugin.tx_thmailformplus_pi1.markers.meinmarker = USER plugin.tx_thmailformplus_pi1.markers.meinmarker { userFunc = tx_meinplugin_pi1->main } Und jetzt noch die Frage - kann ich die Ausgabe des Plugins unterdrücken oder muss ich das ganze zwingend umbenennen bzw aus der main-Funktion entfernen? also so: PHP main() {
// mach nix
}sowie PHP user_main() {
// mach alles wie gewünscht
}[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 05.08.2009 um 15:32.] |
|
Verfasst am: 05. 08. 2009 [15:40]
|
|
|
wurgli
Dabei seit: 01.03.2006
Beiträge: 390
|
Danke, bei mir auch. |
|
Verfasst am: 05. 08. 2009 [15:47]
|
|
|
suit
Themenersteller
Dabei seit: 09.01.2007
Beiträge: 47
|
Kommando zurück. $this->cObj->data referenziert natürlich nun auf das Element/Plugin mit dem mailformplus eingebunden wurde. Ich möchte aber aber auf die Werte des anderen Plugins zugreifen. |
|
Verfasst am: 05. 08. 2009 [18:08]
|
|
|
suit
Themenersteller
Dabei seit: 09.01.2007
Beiträge: 47
|
nvm - ich hab's jetzt als XCLASS-Extension in mailformplus eingebaut. Zwar nicht ganz das was ich wollte, aber auch ok. |
|
Verfasst am: 09. 02. 2011 [22:16]
|
|
|
asosking
Dabei seit: 09.02.2011
Beiträge: 1
|
Hallo Suit falls noch möglich: könntest du die Lösung posten, wäre sehr dankbar |



