# Introduction

Zend_Navigation est un composant gérant arbres et menus pour les pages webs. Il permet de créer des menus, des fils, des liens et des cartographies de sites (sitemaps), ou encore toute autre représentation concernant la navigation.

## Pages et Conteneurs

Deux concepts existent dans Zend_Navigation:

### Pages

Une page (Zend_Navigation_Page) dans Zend_Navigation – dans sa forme la plus simple – est un objet pointant vers une page web. En plus d'un pointeur vers une page web, l'objet page contient d'autres informations utiles à la navigation comme un label, un titre title, etc.

Pour plus d'informations sur les pages, lisez leur section.

### Conteneurs

Un conteneur de navigation (Zend_Navigation_Container) est une classe contenant des pages. Elle possède des méthodes pour ajouter, supprimer, récupérer et itrérer au travers de pages. Elle implémente les interfaces de la SPL RecursiveIterator et Countable, et peuvent ainsi être parcourues avec les itérateurs de la SPL tels que RecursiveIteratorIterator.

Pour plus d'informations sur les conteneurs, lisez leur section.

Zend_Navigation_Page étend Zend_Navigation_Container, ce qui signifie qu'une page peut posséder des sous-pages.

## Séparation des données (modèle) et du rendu (vue)

Les classes dans Zend_Navigation ne s'occupent pas du rendu visuel, celui-ci est effectué par des aides de vue. Par contre, les pages peuvent contenir des informations utilisées par les aides de vue comme un label (libellé), une classe CSS, un titre (title), des attributs lastmod et priority pour les sitemaps, etc.

Pour plus d'informations sur le rendu des éléments, lisez leur section.