Manueltb Posted November 4, 2019 Share Posted November 4, 2019 Buenas. Llevo bastantes dias buscando una forma de hacerlo, sin exito. Para realizar tests A/B puedo identificar en cualquier tpl una variable enviada en la url capturándola por get. Ejemplo www.miweb.com/?variableurl1=A En el tpl por ejemplo header.tpl: {if $smarty.get.variableurl1 == A} hacer algo {elseif $smarty.get.variableurl1 == B} hacer otra cosa {/if} El problema está cuando se cambia de página o se recarga la página, que evidentemente la variable de la url se pierde. He intentado registrar en el controlador Frontcontroller.php una variable smarty dentro de la funcion initHeader, pretendiendo controlar que le asigne el valor de la variable pasada por la url solo si la variable smarty no tiene valor, pero parece que la variable no se me almacena. if ($smarty->getTemplateVars('variablesmarty1')=='') { $this->context->smarty->assign('variablesmarty1', $_GET['variableurl1']); } ¿Alguna orientación? ¿Alguien lo ha solucionado de alguna otra forma? Muchas gracias. Link to comment Share on other sites More sharing options...
Manueltb Posted November 6, 2019 Author Share Posted November 6, 2019 Buenos días. Seguro que más de uno se habrá visto en esta necesidad de crear una variable que se transfiera a todos los tpl. Ayuda plis. Gracias. Link to comment Share on other sites More sharing options...
Prestafan33 Posted November 6, 2019 Share Posted November 6, 2019 (edited) Creo que deberías guardar esa info en la cookie: http://prestacraft.com/how-to-set-cookie-variable-in-prestashop-1-6-and-1-7/ Edited November 6, 2019 by Prestafan33 (see edit history) 1 Link to comment Share on other sites More sharing options...
Manueltb Posted November 7, 2019 Author Share Posted November 7, 2019 Gracías @Prestafan33 Ayer probé a crearla como variable de sessión en el controller php, y luego a rescatarla desde los tpl mediante {$smarty.session.mivariable}, y me está funcionando. No se si será la forma más adecuada de todas, pero cumple su labor. Resuelto. Muchas gracias. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now