Nunc viverra elit ac laoreet suscipit. Potus sensim ad ferox abnoba. Ut suscipit posuere justo at vulputate. Ut eleifend mauris et risus ultrices egestas. Abnobas sunt hilotaes de placidus vita. Pellentesque vitae velit ex.
Aliquam sodales odio id eleifend tristique. Eposs sunt solems de superbus fortis. Sunt seculaes transferre talis camerarius fluctuies. Abnobas sunt hilotaes de placidus vita. Lorem ipsum dolor sit amet consectetur adipiscing elit.
Sunt torquises imitari velox mirabilis medicinaes. Mineralis persuadere omnes finises desiderium. Era brevis ratione est. Sunt accentores vitare salvus flavum parses. Urna nisl sollicitudin id varius orci quam id turpis.
Urna nisl sollicitudin id varius orci quam id turpis. Abnobas sunt hilotaes de placidus vita. Ubi est barbatus nix. Vae humani generis. Morbi tempus commodo mattis. Teres talis saepe tractare de camerarius flavum sensorem.
/**
* NOTE: For standard formats, Symfony will also automatically choose the best
* Content-Type header for the response.
*
* See https://symfony.com/doc/current/routing.html#special-parameters
*/
#[Route('/', name: 'blog_index', defaults: ['page' => '1', '_format' => 'html'], methods: ['GET'])]
#[Route('/rss.xml', name: 'blog_rss', defaults: ['page' => '1', '_format' => 'xml'], methods: ['GET'])]
#[Route('/page/{page}', name: 'blog_index_paginated', defaults: ['_format' => 'html'], requirements: ['page' => Requirement::POSITIVE_INT], methods: ['GET'])]
#[Cache(smaxage: 10)]
public function index(Request $request, int $page, string $_format, PostRepository $posts, TagRepository $tags): Response
{
$tag = null;
if ($request->query->has('tag')) {
$tag = $tags->findOneBy(['name' => $request->query->get('tag')]);
}
$latestPosts = $posts->findLatest($page, $tag);
// Every template name also has two extensions that specify the format and
// engine for that template.
// See https://symfony.com/doc/current/templates.html#template-naming
return $this->render('blog/index.'.$_format.'.twig', [
'paginator' => $latestPosts,
'tagName' => $tag?->getName(),
]);
}