Zum Inhalt springen

Template wird nicht eingebunden

Erstellt am 24. April 2006 · 3 Antworten · letzte Antwort am 26. April 2006

Tags: Frage

GreaseGun ·

von dieser lektüre hier:
http://wiki.typo3.org/index.php/Extension_Development,_using_HTML-Templates

habe ich verucht, den markup in ein template zu verbannen.
ich habe eine funktionierende ext_typoscript_setup.txt, da sie bei anderen einstellungen der selben extension tadellos funktioniert.

dort habe ich zunächst

plugin.tx_myextension_pi1.templateFile = EXT:my_user_test1/template.html

eingegeben. user_test1 ist der key meiner extension.

in der extension klasse steht der folgende code:

$this->templateCode = $this->cObj->fileResource($conf['templateFile']);
    $template['total'] = $this->cObj->getSubpart($this->templateCode,'###MYTEMPLATE###');
    $markerArray['###MARKER1###'] = $this->pi_getLL('MARKER1');
    $markerArray['###MARKER2###'] = $this->pi_getLL('MARKER1');
    
    $content = $this->cObj->substituteMarkerArrayCached($template['total'],$markerArray, array(), array());
    return $content;

das (html)template habe ich 1:1 von der oben verlinkten site kopiert. angezeigt wird mir nix aus dem template. es müßte ja wenigstens der statische markup aus template.html eingebunden werden.
also gehe ich davon aus, dass das importieren des templates nicht so recht funktioniert hat.
die ...setup.txt und template.html liegen direkt im ext verzeichnis. im pi1 verz. liegt die php-datei mit der extensionklasse.
wie schon gesagt, wird ja auf die setup-datei korrekt zugegriffen. also kann ja nur der, im setup gesetzte, pfad zum template falsch sein.

neben

plugin.tx_user_test1_pi1.templateFile = EXT:user_test1/template.html

habe ich aber auch schon

plugin.user_test1_pi1.templateFile = template.html

etc. in zig varianten ausprobiert.

hülfe, wie referenziere ich das template korrekt, oder woran liegt es ??

m.​helmich ·

Guten Tag,
wenn du das Problem so lösen willst:

plugin.tx_user_test1_pi1.templateFile = EXT:user_test1/template.html

solltest du bedenken, dass die Namen mit dem Kickstarter erstellter Extensions immer mit tx_ beginnen (was auch hier der Fall ist, da dein Frontendplugin scheinbar tx_user_test1_pi1 heißt).
Demnach müsste obiger Code folgendermaßen lauten:

plugin.tx_user_test1_pi1.templateFile = EXT:tx_user_test1/template.html