Aliquam sodales odio id eleifend tristique. Ut suscipit posuere justo at vulputate. Ut eleifend mauris et risus ultrices egestas. Pellentesque vitae velit ex. Mineralis persuadere omnes finises desiderium. Morbi tempus commodo mattis.
In hac habitasse platea dictumst. Urna nisl sollicitudin id varius orci quam id turpis. Mauris dapibus risus quis suscipit vulputate. Curabitur aliquam euismod dolor non ornare. Mineralis persuadere omnes finises desiderium.
Nulla porta lobortis ligula vel egestas. Morbi tempus commodo mattis. Vae humani generis. Eposs sunt solems de superbus fortis. Teres talis saepe tractare de camerarius flavum sensorem. Aliquam sodales odio id eleifend tristique.
In hac habitasse platea dictumst. Pellentesque et sapien pulvinar consectetur. Silva de secundus galatae demitto quadra. Vae humani generis. Sunt accentores vitare salvus flavum parses. Curabitur aliquam euismod dolor non ornare.
Eros diam egestas libero eu vulputate risus. Sunt seculaes transferre talis camerarius fluctuies. Era brevis ratione est. Sed varius a risus eget aliquam. Sunt torquises imitari velox mirabilis medicinaes. Aliquam sodales odio id eleifend tristique.
Pellentesque vitae velit ex. Eros diam egestas libero eu vulputate risus. Mineralis persuadere omnes finises desiderium. Sed varius a risus eget aliquam. Eposs sunt solems de superbus fortis. Sunt accentores vitare salvus flavum parses.
Teres talis saepe tractare de camerarius flavum sensorem. Sed varius a risus eget aliquam. Vae humani generis. Eros diam egestas libero eu vulputate risus. In hac habitasse platea dictumst. Ubi est barbatus nix. Nulla porta lobortis ligula vel egestas.
Mineralis persuadere omnes finises desiderium. Era brevis ratione est. Ubi est barbatus nix. Mauris dapibus risus quis suscipit vulputate. Potus sensim ad ferox abnoba. Lorem ipsum dolor sit amet consectetur adipiscing elit.
Dies ist eine Demo-Applikation, die mit dem Symfony-Framework erstellt wurde, um den empfohlenen Weg zur Entwicklung von Symfony-Applikationen zu veranschaulichen.
/**
* 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(),
]);
}