Foros del Web » Programando para Internet » PHP » Zend »

Zend, seguimiento del menu y el item clickeado

Estas en el tema de Zend, seguimiento del menu y el item clickeado en el foro de Zend en Foros del Web. Hola. trabajando con Zend, tengo un menu hecho con una lista UL, y me está costando plantear la forma en que debo recuperar que opción ...
  #1 (permalink)  
Antiguo 01/12/2009, 14:03
 
Fecha de Ingreso: noviembre-2008
Mensajes: 288
Antigüedad: 16 años, 1 mes
Puntos: 2
Zend, seguimiento del menu y el item clickeado

Hola.
trabajando con Zend, tengo un menu hecho con una lista UL, y me está costando plantear la forma en que debo recuperar que opción se ha clickeado y poder rearmar entonces el menú con la opción correspondiente con ID=CURRENT.

¿Zend tiene algo para manejar esto? gracias.
  #2 (permalink)  
Antiguo 01/12/2009, 14:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Zend, seguimiento del menu y el item clickeado

Necesitas pasar algún parámetro por GET o POST para que sepas que opción fue la que selecciono y al dibujar el menu poner el id the current.

Saludos.
  #3 (permalink)  
Antiguo 02/12/2009, 19:24
 
Fecha de Ingreso: noviembre-2008
Mensajes: 288
Antigüedad: 16 años, 1 mes
Puntos: 2
Respuesta: Zend, seguimiento del menu y el item clickeado

Realice este metodo para evitar trabajar con parámetros. No se si es lo mejor pero me ha gustado.

En el init() del controller, asigno a una variable en la view el menú que se ha invocado

$this->view->menuElegido = $this->getOpcionMenu();


//Esta funcion, rastrea la url actual, y busca cual de las palabras de mi menu aparece
public function getOpcionMenu()
{
$pathActual=$_SERVER['REQUEST_URI'];

$menuAdmin=array('home','clientes','productos','pr oveedores', 'contacto');

for ($i=0;$i<count($menuAdmin);$i++){
$p=strpos($pathActual,$menuAdmin[$i]);
if ($p===false){
//
}else{
return $menuAdmin[$i];
}
}
return false;
}


luego, en el phtml donde armo el menú, coloco algo como esto por cada item del menu:
<li <?php if(strpos($this->menuElegido, 'productos')!==false) echo "id=current" ?>>
<a title="Productos"
href="<?php echo $this->baseUrl ?>/admin/productos/">
<span>Productos</span>
</a></li>

La condición es que exista una palabra única que identifique a cada item del menú, y con eso armar el array dentro de la función.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:02.