3.1 Création de la route
sudo nano /var/www/symblog/src/Blogger/BlogBundle/Resources/config/routing.yml
Ajouter le règle de routage suivante :
BloggerBlogBundle_about:
pattern: /about
defaults: { _controller: BloggerBlogBundle:Page:about }
requirements:
_method: GET
3.2 - Ajout de l'action "aboutAction()" dans le controller Page
sudo nano /var/www/symblog/src/Blogger/BlogBundle/Controller/PageController.php
Ajouter la méthode suivante :
public function aboutAction()
{
return $this->render('BloggerBlogBundle:Page:about.html.twig');
}
3.3 - Création de la vue associée
sudo nano /var/www/symblog/src/Blogger/BlogBundle/Resources/views/Page/about.html.twig
Ajouter le code html suivant :
{# src/Blogger/BlogBundle/Resources/views/Page/about.html.twig #}
{% extends 'BloggerBlogBundle::layout.html.twig' %}
{% block title %}About{% endblock%}
{% block body %}
<header>
<h1>About symblog</h1>
</header>
<article>
<p>Donec imperdiet ante sed diam consequat et dictum erat faucibus. Aliquam sit
amet vehicula leo. Morbi urna dui, tempor ac posuere et, rutrum at dui.
Curabitur neque quam, ultricies ut imperdiet id, ornare varius arcu. Ut congue
urna sit amet tellus malesuada nec elementum risus molestie. Donec gravida
tellus sed tortor adipiscing fringilla. Donec nulla mauris, mollis egestas
condimentum laoreet, lacinia vel lorem. Morbi vitae justo sit amet felis
vehicula commodo a placerat lacus. Mauris at est elit, nec vehicula urna. Duis a
lacus nisl. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae.</p>
</article>
{% endblock %}
3.4 - Création de liens entre les pages
Nous allons créer un lien dans la navigation vers la page "A propos" :
sudo nano /var/www/symblog/app/Resources/views/base.html.twig
Modifier les balises de liens :
<!-- app/Resources/views/base.html.twig -->
{% block navigation %}
<nav>
<ul class="navigation">
<li><a href="{{ path('BloggerBlogBundle_homepage') }}">Home</a></li>
<li><a href="{{ path('BloggerBlogBundle_about') }}">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
{% endblock %}
Et un liens vers la home sur le logo du header, pour cela modifier le code comme suit dans le même fichier /app/Resources/views/base.html.twig :
<!-- app/Resources/views/base.html.twig -->
<hgroup>
<h2>{% block blog_title %}<a href="{{ path('BloggerBlogBundle_homepage') }}">symblog</a>{% endblock %}</h2>
<h3>{% block blog_tagline %}<a href="{{ path('BloggerBlogBundle_homepage') }}">creating a blog in Symfony2</a>{% endblock %}</h3>
</hgroup>