Menu vertical

Buenas.

Tengo un menu similar al del curso de esta misma web

http://www.comocreartuweb.com/curso-php-y-msql/las-bases-de-datos.html

He estado investigando el código para ver la parte del menu vertical y he encontrado esto

<ul>
<li><a class="subseccion" id="estilo04i02i00i00" href="las-bases-de-datos.html">Las Bases de Datos</a></li>
<li><a class="subseccion" id="estilo04i02i01i00" href="../../../curso-php-y-msql/las-bases-de-datos/phpmyadmin.html">PhpMyAdmin</a></li>
<li><a class="subseccion" id="estilo04i02i02i00" href="../../../curso-php-y-msql/las-bases-de-datos/conectar-a-base-de-datos.html">Conectar a Base de Datos</a></li>
<li><a class="subseccion" id="estilo04i02i03i00" href="../../../curso-php-y-msql/las-bases-de-datos/acceder-a-phpmyadmin.html">Acceder a PhpMyAdmin</a></li>
<li><a class="subseccion" id="estilo04i02i04i00" href="../../../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos.html">Crear la Base de Datos</a></li>
<li><a class="apartado" id="estilo04i02i04i01" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/campo.html">Campo</a></li>
<li><a class="apartado" id="estilo04i02i04i02" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/tipos.html">Tipos</a></li>
<li><a class="apartado" id="estilo04i02i04i03" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/longitud-y-valores.html">Longitud y Valores</a></li>
<li><a class="apartado" id="estilo04i02i04i04" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/cotejamiento.html">Cotejamiento</a></li>
<li><a class="apartado" id="estilo04i02i04i05" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/atributos.html">Atributos</a></li>
<li><a class="apartado" id="estilo04i02i04i06" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/nulo.html">Nulo</a></li>
<li><a class="apartado" id="estilo04i02i04i07" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/predeterminado.html">Predeterminado</a></li>
<li><a class="apartado" id="estilo04i02i04i08" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/extra.html">Extra</a></li>
<li><a class="apartado" id="estilo04i02i04i09" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/indices.html">Indices</a></li>
<li><a class="apartado" id="estilo04i02i04i10" href="../curso-php-y-msql/las-bases-de-datos/crear-la-base-de-datos/y-los-comentarios.html">Y los Comentarios</a></li>
<li><a class="subseccion" id="estilo04i02i05i00" href="../../../curso-php-y-msql/las-bases-de-datos/insertar-datos-en-la-base.html">Insertar Datos en la Base</a></li>
</ul>

veo que no se hace referencia a donde debe mostrarse la pagina si en una pagina nueva,en la misma etc..

Ahora mi duda.

Yo tengo algo similar pero lo que hice en su dia fue creame capas y cuando un usuario presionaba una parte del menu me lo cargaba en una capa, y no soy capaz de ver como lo hacen aqui, que ponen el menu en todas las paginas de la web que lo necesitan?

Tengo otra duda que nada tiene que ver con este tema pero también me tiene con la mosca detras de la nariz, veo en muchas webs viendo el codigo fuente que la gente no tabula no da saltos de línea etc....eso se hace para que el fichero final tenga un tamaño menor y asi carge mas rapido?

Gracais por todas las respuestas
Hola:

que ponen el menu en todas las paginas de la web que lo necesitan?

Sí, eso se hace. Ten en cuenta que es un tutorial para novatos.

eso se hace para que el fichero final tenga un tamaño menor y asi carge mas rapido?

Justamente. Aunque las herramientas del navegador mostrarán el código HTML con formato (con tabs y saltos de línea, pero no funciona con Javascript).
Pero lo normal es meter tu menu en todas las paginas?

Sip :P.

Lo que ocurre es que, por ejemplo, alguien con experiencia en PHP intentará hacer algo similar a un CMS (como Wordpress, Joomla, Drupal, etc.), para no tener que copiar y pegar el menú en todas las páginas. De hecho, intentará hacer una función que simplemente muestre el código necesario cada vez que se necesite una parte del código estático.

Por ejemplo, una función para mostrar el menú:

function get_menu( $current = '' ) {
  $menu = array(
    array( 'href' => 'pagina.html', 'text' => 'Enlace 1', 'title' => 'Título del enlace', 'id' => 'elemento1' ),
    array( 'href' => 'pagina1.htm' 'text' => 'Enlace 2', 'title' => 'Título enlace 2', 'id' => 'elemento2' )
  );

  $out = '<ul id="navigation">';
  foreach( $menu as $m ) {
    $out .= '<li';

    if( $current == $m['id'] )
      $out .= ' class="current"';

    $out .= "><a href='$m[href]' title='$m[title]'>$m[text]</a></li>";
  }

  echo $out . '</ul>';
}

Y lo utilizarías así:

<html>
  <head>
    <title>Título</title>
  </head>
  <body>
    <header>
      <nav>
        <?php get_menu( 'elemento1' ); ?>
      </nav>
    </header>
  </body>
</html>
Muchas gracias por la ayuda, me esta siendo muy util para saber como trabajan los profesionales con esto.

Tambien se podria hacer un fichero plano y meterlo con un include.
Si sabes algo de php, puedes traerte el menu cuando te haga falta o bien traertelo al index y que esté disponible en todas las secciones que se ejecuten dentro de éste:

<?php require_once("rutadelmenu/menu.php"); ?>

Haces esta llamada desde el index y el menu aparecerá ahí siempre que se carguen las secciones del index.

Un saludo!