Introduction
Dans un précédent billet, je vous ai présenté l’initiative de grafikart: http://blog.developpez.com/ducodeetdulibre/p12482/outilsweb/comment-choisir-son-framework-php
Sur les prochains billets, nous allons détailler, analyser et comparer la manière de faire de chaque framework.
But de ce billet : MkFramework
Dans ce billet, nous allons essayer de comprendre comment s’organise la création de page avec chaque framework:
Pour rappel, dans un site web, on à un template général, appelé « layout », qui contient notre bandeau/logo, nos menus de navigation ainsi qu’une partie dynamique: le contenu de notre site.
Nous allons voir ici, comment ont choisi le layout à utiliser (on peut en avoir plusieurs), puis comment on intègre la navigation, et comment on choisit quel template de vue utiliser pour l’affichage de notre contenu.
Voilà la page que nous allons étudier ici:
On peut voir 4 zones:
- Le bandeau
- La navigation des catégories
- La navigation des derniers posts
- Le contenu dynamique
Le layout
Pour afficher la page d’accueil, on appelle la classe controller:
/application/classes/Controller/Posts.php
On voit ici, que la propriété publique « template » indique le nom du layout « layouts/blog »
Voyons à quoi il ressemble:
Pour information, il se situe ici:
/application/views/layouts/blog.php
On retrouve ici le bandeau écrit directement dans le layout, et un emplacement pour le contenu dynamique qui contiendra le contenu + la navigation des catégories + celle des derniers posts
La/les vues
Lorsque l’on regarde l’action appelée pour afficher cette page d’accueil:
On voit que l’on assigne au contenu la vue blog/index
On note également que la classe étend Controller_Template, une classe située ici:
/application/classes/Controller/Template.php
Dans laquelle une méthode before() initialise « en global » les tableaux contenant les catégories et les derniers posts:
On voit également comment est géré l’affichage du cache de ce menu qui change rarement.
Revenons à notre vue blog/index, cette vue est situé ici:
/application/views/blog/index.php
On remarque que celle-cifait appel à la vue blog/posts et blog/sidebar
Qui permettront d’afficher la liste des posts et les deux navigations: catégories et derniers posts