Simon Vieille : Générer une page dans Murph
lundi 16 mai 2022 à 10:30Murph est un framework open-source pour construire des CMS. Il est développé à l'aide de Symfony et permet de gérer des sites web avec plusieurs noms de domaines et en plusieurs langues.
Cet article fait partie d'une série de tutoriaux pour présenter les fonctionnalités de Murph.
Contrairement à pas mal de CMS, une page permet de rassembler des contenus qui pourront être réutilisés plusieurs fois dans une arborescence, là où certains CMS lient définitivement une page à un élément du menu.
Par ailleurs, une page ne contient que des données qui pourront être présentées comme on le veut. Autrement dit, la manière de rendre une page est indépendante de la façon de rédiger les contenus.
On va créer une nouvelle page ExamplePage
avec ces contenus :
- un titre
title
qui sera un champ texte - un bloc de contenu
content
avec l'éditeur TinyMCE
On va ensuite enregistrer la page dans Murph et lui donner le nom Page d'exemple
.
core:
site:
# ...
pages:
App\\Entity\\Page\\ExamplePage:
name: "Page d'exemple"
templates:
- {name: "Default", file: "page/example/default.html.twig"}
Quand une page est créée, un template par défaut l'est aussi. Une page peut avoir autant de templates qu'on souhaite.
Éditons le template par défaut pour afficher simplement nos contenus :
{% extends 'base.html.twig' %}
{% block page %}
{{ _page.title.value }}
{{ _page.content.value|raw }}
{% endblock %}
On peut à présent créer un nouvel élément dans le menu, lui attribuer une nouvelle page et commencer à saisir le contenu.
La documentation complète est disponible sur doc.murph-project.org.
Original post of Simon Vieille.Votez pour ce billet sur Planet Libre.
Articles similaires
- Simon Vieille : Mail RSS : transformer des mails en flux RSS (12/11/2020)
- Simon Vieille : Nouvelle version majeure de Custom Menu (14/01/2022)
- Simon Vieille : Murph, la version v1.0 est publiée (26/01/2022)
- Simon Vieille : Jouer à Motus dans Matrix (01/02/2022)
- Simon Vieille : Nouveautés dans Murph v1.7 (03/03/2022)