Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/07/2011, 04:24
Avatar de vgonga1986
vgonga1986
 
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: asignar una clase css a un LI

Buenas,

Es tan sencillo como usar una variable. Por lo que he entendido tienes el menú en un archivo único que luego incluyes en cada página. Pues bien, cuando tú haces un include, lo único que se hace es pegar el código del fichero en el sitio donde haces el include, luego las variables definidas en el archivo que estás, siguen definidas en el archivo incluido. Puedes usar eso para lo que tú buscas, te pongo un ejemplillo, que se ve mucho más rápido:

- Tienes un fichero (pongamos, menu.php) con lo siguiente:
Código PHP:
<ul>
  <
li><a href="inicio.php">inicio</a></li>
  <
li><a href="noticias.php">noticias</a></li>
  <
li><a href="contacto.php">contacto</a></li>
  ...
</
ul
- Tendrás una página para inicio.php, otra para noticias.php, otra para contacto.php... en la que, en cierto punto del código harás algo como lo siguiente:
Código PHP:
...
<?php include('menu.php'); ?>
...
Pues bien, es tan fácil como hacer lo siguiente:
inicio.php:
Código PHP:
...
<?php $current "inicio"; include('menu.php'); ?>
...
noticias.php:
Código PHP:
...
<?php $current "noticias"; include('menu.php'); ?>
...
contacto.php:
Código PHP:
...
<?php $current "contacto"; include('menu.php'); ?>
...
Y en el menu.php pones:
Código PHP:
<ul>
  <li><a href="inicio.php"<?php if ($current == "inicio") echo ' class="current"'?>>inicio</a></li>
  <li><a href="noticias.php"<?php if ($current == "noticias") echo ' class="current"'?>>noticias</a></li>
  <li><a href="contacto.php"<?php if ($current == "contacto") echo ' class="current"'?>>contacto</a></li>
  ...
</ul>
Espero que te sirva, a que es más fácil de lo que pensabas?

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?