Jump to content
xt:Commerce Community Forum
Sign in to follow this  
boolean01

Zugriff auf Smarty Variable in eigenem Plugin

Recommended Posts

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?!

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...