Script para hacer menú recursivo
Hacer una función recursiva,
Supongamos que tenemos una tabla en una base de datos donde vamos a crear las secciones de una web (muy útil para un gestor de contenidos) y queremos hacer un menú de diferentes niveles anidados sin poner limitaciones al número de niveles.
Bien para este supuesto voy a poner un caso real de un proyecto en el que estoy trabajando de forma particular.
La Base De Datos
Lo primero que tenemos que hacer es considerar nuestra base de datos para ello aunque pueda haber muchas más tablas dependiendo de nuestro proyecto, necesitaremos una similar a la de la siguiente imagen:
Esta tabla es el prototipo que estoy usando para crear el proyecto anteriormente mencionado, no obstante nos servirá.
Hay que prestar atención a los campos id, parent, slug y nombre. El resto son para introducir otro tipo de instrucciones en la aplicación. De estos campos que nos interesan su descripción es:
- id: es la id de la sección
- parent: es la id de la sección a la que esta subyugada la sección de la tupla actual
- slug: es la url donde debe de apuntar nuestra sección
- nombre: el nombre del menú o de la sección