I've been working on trying to setup a blog archive for a blog site where the use clicks on a date and the corresponding posts appear. (see image) I understand I need to retrieve all my blog posts and sort by date, but the steps after that are foggy to me. Taking that data then sorting it by month/year and passing it to a template is the part I am having trouble with.
Can someone shed some light on what I am doing wrong or provide a simple working example?

What I have thus far:
    public function archiveAction()
    {
        $em = $this->getDoctrine()->getManager();
//        $query = $em->getRepository('AcmeProjectBundle:Blog')
//            ->findAll();
        $blogs = $em->getRepository('AcmeProjectBundle:Blog')
            ->getLatestBlogs();
        if (!$blogs) {
            throw $this->createNotFoundException('Unable to find blog posts');
        }
        foreach ($blogs as $post) {
            $year = $post->getCreated()->format('Y');
            $month = $post->getCreated()->format('F');
            $blogPosts[$year][$month][] = $post;
        }
//        exit(\Doctrine\Common\Util\Debug::dump($month));
        return $this->render('AcmeProjectBundle:Default:archive.html.twig', array(
            'blogPosts' => $blogPosts,
        ));
    }
 
     
     
    