Une mise en page commune

Exercice 3 sur 7 du chapitre 6 · 150 XP · 4 objectifs vérifiés par des tests

Notions abordées : GabaritMise en pageEnum::cases()

Il reste un gros bloc de HTML dans du PHP : la mise en page de Page::rendre(), coincée dans un heredoc. Elle mérite son gabarit. Et pendant qu'on y est, Gaston réclame un menu pour aller directement à la météo.

Votre mission

  1. Déplacez le HTML de Page::rendre() dans templates/mise-en-page.php, avec <?= ... ?> pour chaque valeur. Le titre de l'onglet passe par htmlspecialchars(), le contenu non : c'est déjà du HTML.
  2. Page::rendre() ne fait plus que rendre ce gabarit avec Vue::rendre().
  3. Dans l'en-tête (à l'intérieur de <header class="entete">), sous le bulletin, ajoutez le menu <nav class="rubriques"> : un lien vers la page de chaque rubrique, avec son libellé.
  4. Construisez ce menu à partir de l'énumération : une rubrique ajoutée un jour à Rubrique y apparaîtra toute seule.

Rappel

Rubrique::cases() renvoie la liste de tous les cas de l'énumération, dans l'ordre où ils sont déclarés. Un gabarit est un fichier PHP comme un autre : il commence par les use des classes qu'il utilise.