Hallo erstelle eine Visual CMS Widget und möchte den HTML Code in Smarty auslagern.
Idealerweise sollte die Datei im diesen Pfad liegen:
oxideshop/source/Application/views/wave/tpl/vcms/datei.tpl
Die Parse Methode sieht bei mir so aus.
$oMedia = oxNew(Media::class);
$urlImage = $aParams['image'] ? $oMedia->getMediaUrl($aParams['image']) : '';
$hexBgColor = $aParams['color'];
$fontSize = $aParams['fontSize'] ? 'font-size:' . $aParams['fontSize'] . 'px' : 'font-size:18px';
$oSmarty = oxRegistry::getUtils()->variable();
$oSmarty->assign('urlImage', $variable);
$oSmarty->assign('hexr', $variable);
$html = $oSmarty->fetch(pfad.datei.tpl);
return $html;
Meine Fragen dazu wären:
- Wie schreibe ich die Smarty-Funktion, damit er die Datei im richtigen Verzeichniss findet?
- Wie muss die Smarty Datei sein, damit er die Variablen übernimmt?
Danke und Gruß :)
AP
Ich bin mir grade nicht sicher, ob man auf die Smarty Instanz, die dann auch genutzt wird, direkt kommt, aber solange du nur Strings übergibst, sollte das damit dann auch gehen.