Jump to content
Manueltb

variable smarty para tests A/B

Recommended Posts

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.

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More