Le rendu génère un affichage similaire à HTML_Menu_DirectTreeRenderer mais offre plus de possibilités de personnalisation à l'affichage.
Le rendu doit aussi fonctionner avec l'instance HTML_Template_IT, mais à un gabarit de menus qui tend à avoir beaucoup de blocks ; les fonctionnalités de cache de HTML_Template_Sigma devraient améliorer significativement les performances.
Ceci est un gabarit minimal pour HTML_Menu_SigmaTreeRenderer, contenant tous les blocks requis :
<!-- BEGIN mu_tree_loop --> <!-- BEGIN mu_level_open --> <ul> <!-- END mu_level_open --> <!-- BEGIN mu_entry_open --> <li> <!-- END mu_entry_open --> <!-- BEGIN mu_active --> <strong>{mu_title}</strong> <!-- END mu_active --> <!-- BEGIN mu_inactive --> <a href="{mu_url}">{mu_title}</a> <!-- END mu_inactive --> <!-- BEGIN mu_activepath --> <a href="{mu_url}"><em>{mu_title}</em></a> <!-- END mu_activepath --> <!-- BEGIN mu_entry_close --> </li> <!-- END mu_entry_close --> <!-- BEGIN mu_level_close --> </ul> <!-- END mu_level_close --> <!-- END mu_tree_loop -->
Un exemple pluscomplet montrant les possibilités de personnalisation peut être trouvé dans l'archive du package.
Notez que les blocks et les marqueurs présents dans le gabarit ont le préfixe mu_. Ceci est fait pour prévenir les conflits de noms avec les blocks et les marqueurs existants, mu_ est le préfixe par défaut, un autre préfixe peut être passé au constructeur de la classe.
Ce block doit toujours être présent et doit être un parent pour tous les autres blocks. Il est utilisé pour implémenter "flow", pour rendre les entrées les unes après les autres.
Ces blocks doivent être utilisés au début et à la fin de chaque niveau du menu. Si les blocks spécifiques de niveau %level%_level_open et %level%_level_close sont présents, ils seront utilisés à la place.
Ces blocks doivent être utilisés au début et à la fin de chaque entrée du menu. Si les blocks spécifiques de niveau %level%_entry_open et %level%_entry_close sont présents, ils seront utilisés à la place.
Ces blocks sont utilisés pour afficher les entrées du menu, ils correspondent à de possibiles types d'entrées. Chaque block doit contenir un marqueur {title} ainsi qu'un marqueur {url} placeholder. Comme toujours, si d'autres clés sont présentes dans le tableau de menu original, elles seront assignées aux marqueurs correspondant dans le gabarit.
Si le block spécifique de niveau %level%_%entry type% existe, il sera utilisé à la place.
HTML_Menu_SigmaTreeRenderer
Méthodes héritées HTML_Menu_SigmaTreeRenderer
Nom de la méthode | Résumé |
---|---|
HTML_Menu_Renderer::finishLevel() | Termine le niveau de l'arbre (pour les types 'tree' et 'sitemap') |
HTML_Menu_Renderer::finishMenu() | Termine le menu |
HTML_Menu_Renderer::finishRow() | Termine la ligne du menu |
HTML_Menu_Renderer::renderEntry() | Rendu de l'élément du menu |
HTML_Menu_Renderer::setMenuType() | Définie le type du menu à être rendu. |
Prev | HTML_Menu | Next |
constructor HTML_Menu_SigmaRenderer() | PEAR Manual | constructor HTML_Menu_SigmaTreeRenderer() |