Zum Inhalt springen

Ausgabe einer Extension in einer anderen Extension nutzen

Erstellt am 17. Mai 2011 · 4 Antworten · letzte Antwort am 27. Juni 2012

Tags: Frage

mindstorms ·

hallo

sitze schon seit stunden vor folgendem problem.

ich möchte in einer extension einen marker füllen und zwar mit der ausgabe einer anderen extension

im moment fülle ich die marker mit text den ich in TS festlege was auch funktioniert

$markerArray['###AREA###'] = $GLOBALS['TSFE']->tmpl->setup['lib.']['area.']['value'];

ich habe auch ein TS-objekt das ich auf der seite ausgebe

lib.kopfbild < plugin.tx_mmheaderslide_pi1

jetzt würde ich aber gerne den inhalt von lib.kopfbild in den marker ###AREA### einfügen

so funktioniert es leider nicht

$markerArray['###AREA###'] = $GLOBALS['TSFE']->tmpl->setup['lib.']['kopfbild'];

hat jemand eine idee wie ich das lösen könnte?

vielen dank schon mal im voraus
mindstorms

vince ·

Hallo,

Du Kannst ein Objekt von tx_mmheaderslide_pi1 in deinem Plugin erzeugen, etwa so:

include(t3lib_extMgm::extPath('mmheaderslide').'pi1/class.tx_mmheaderslide_pi1.php');
$object = t3lib_div::makeInstance('tx_mmheaderslide_pi1');
$object->cObj = t3lib_div::makeInstance('tslib_cObj');

Dann die Ausgage der Main Methode in einer Variable speichern:

$marker = $object->main("", $GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_mmheaderslide_pi1']);

Hab den Code nicht getestet, kann sein, dass da Fehler drinn sind. Im Prinzip müsste es aber so gehen.

Gruß,
Vince

mindstorms ·

danke vince hat funktioniert

hab nur statt include ein include_once verwenden müssen sonst gabs eine php-fehlermeldung "Cannot redeclare class ..."

schöne grüße
mindstorms

tobla ·

Hallo zusammen

Ich stehe vor dem gleichen Problem. Ich möchte es jedoch generisch lösen:

plugin.tx_myExt {
  comm.10 < plugin.tx_beliebigeExtension
  comm.wrap = <p class="cmm">|</p>
}
$marker['###PLUGININCLUDE###'] = $this->conf['comm'];

Dabei soll das in 'comm' gespeicherte Typoscript aufgelöst werden, wie das z.B. bei

page.10 < plugin.tx_beliebigeExtension

funktioniert.

Konkret geht es darum, dass ich das Commerce Plugin in meine Extension einbinden will. Da ich jedoch run um das Commerce Plugin herum noch mehr ausgeben möchte, möchte ich ein beliebiges TS Objekt einfügen können.

tobla ·
$marker['###PLUGININCLUDE###'] = $this->cObj->cObjGetSingle($this->conf['comm'], $this->conf['comm.']);

Bindet das TS Objekt korrekt ein.