Bloques con Sonata

pexels-luis-gomes-546819.jpg
Solucionex
30
Sep 22

Una de las funcionalidades básicas para un CMS es una funcionalidad de bloques, con Sonata tenemos un bundle para añadir esa funcionalidad SonataBlockBundle

Lo instalamos

composer require sonata-project/block-bundle

Lo configuramos en el fichero sonata_block.yaml

sonata_block:
    default_contexts: [sonata_page_bundle]
    blocks:

El bundle nos proporciona funciones para Twig para interactuar con los bloques

Renderizar una instancia:

{{ sonata_block_render(block) }}

Renderizar un bloque proprocionando el tipo y las opciones:

{{ sonata_block_render({ 'type': 'sonata.block.service.rss' }, {
    'title': 'Sonata Project\'s Feeds',
    'url': 'https://sonata-project.org/blog/archive.rss'
}) }}

El bundle nos proporciona una serie de bloques por defecto estos son: EmptyBlockService, TextBlockService, RssBlockService y MenuBlockService.