boolean01 Posted May 29, 2010 Report Share Posted May 29, 2010 Hallo, ich baue gerade ein eigenes Plugin. Das passt soweit das ich normale Ausgaben erhalte. Die Ausgabeanweisungen stehen in einer sep. Datei "function...php" welche ich über einen Hook aufrufe. Also im HTML steht mein Hook: {hook key=print_myblabla} Und dieser Hook ruft dann meine Funktion auf <hook>print_myblabla</hook> <phpcode><![CDATA[ include _SRV_WEB_PLUGINS.'pk_blabla/functions/function.pk_blabla.php'; ]]> </phpcode> Die Funktion function.pk.blabla.php: <?php echo "Hallo Welt" ?> Jetzt würde ich in meiner PHP Funktionsdatei aber auch gerne auf Smartyvariablen wie z.B. den Produktnamen zugreifen wollen. Wie kann man das anstellen? Den Produktnamen selbst erhalte ich durch nen PHP Schnippsel in meiner HTML Datei einfach: {php} $php_variable = $this->get_template_vars('products_name'); echo $php_variable; {/php} Das muss doch auch in meiner ext. Funktion machbar sein?! Link to comment Share on other sites More sharing options...
nusphere Posted October 31, 2013 Report Share Posted October 31, 2013 Ist zwar schon etwas her deine Anfrage, aber hier meine Lösung um im "Hookcode" mit den Smartyvariablen zu arbeiten. // Variablen im Code verfügbar machen foreach($smarty->_tpl_vars as $key => $value) ${$key} = $value; echo "(".$products_name.")";[/PHP] Im Tempalte selber ist die Smarty-Klasse als Objekt ($smarty) verfügbar und damit kann gearbeitet werden. Einfach am Anfang eines Smarty Hooks die Foreachschleife ausführen und dann sollte man alle smarty-Variablen die zu dem Zeitpunkt des Hooks verfügbar sind - in PHP verwendbar sein. Ein direkter Zugriff ist mit [PHP] $produkt_name = $smarty->_tpl_vars["products_name"];[/PHP] möglich. Da nun schon ewig viel Zeit seit dem Post des TA's vergangen ist - dient das hier nun der Nachwelt Gruß Das Nu Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.