Vamos a crear un diseño para nuestra página de "receta individual " para
poder personalizarla un poco más.
Me encanta que podamos crear nuevos diseños sobre la marcha, siempre que haya que modificar una página.
Añadimos un nuevo diseño, elegimos nuestro Diseño 2 favorito y lo llamamos "Diseño de receta individual".
Y a estas alturas ya sabéis lo que hay que hacer.
Empieza por enlazar la zona del Encabezado...
luego la zona Pie de página.
¡Genial! Y luego, como vamos a aplicar esto a una página normal
que ya existe en Twig , añade un bloque "Vista completa ",
que renderizará el bloque body de nuestra plantilla.
Un comienzo sólido.
Pulsa "Publicar"...
para que podamos mapear esto.
Añade una nueva asignación, vincúlala a nuestro "Diseño de receta individual"...
y pulsa "Detalles".
esta vez, vamos a enlazar a través del nombre de la ruta.
Para el nombre de la ruta, abre src/Controller/RecipeController.php.
Aquí está: app_recipes_show.
Pégalo, pulsa "Guardar cambios" y...
¡probemos!
Aún no deberíamos ver ninguna diferencia y...
no la vemos. Pero podemos ver que está utilizando nuestro diseño
Bien, ¡vamos a animar un poco esta página !
Vuelve al administrador de diseños y edita el " Diseño de receta individual
". Añade una nueva Rejilla y cámbiala por una " Colección dinámica "...
que utilice "Contentful
Search". Como hicimos antes, carga Habilidades, muestra las más nuevas
primero y limita a 3. Vale, si
"Publicamos
y seguimos editando"... y luego actualizamos... ¡guau! Es genial que ahora podamos
ponerlas en cualquier sitio. Aunque,
envolvamos eso y
contenedor. Y... ya está.
Hasta ahora, todo esto es
fácil. ¿Listo para la complicación? Quiero personalizar el aspecto de esta cuadrícula: Quiero tener una
receta grande a la izquierda y luego dos
recetas más pequeñas a la derecha. Pero no quiero cambiar el aspecto de la cuadrícula
en otras partes de nuestro
sitio, como en la página de inicio. Así que la pregunta es cómo: ¿podemos cambiar el aspecto de esta cuadrícula
sólo en esta página? Haz clic en la cuadrícula
y ve a la pestaña de diseño. Resulta que una cuadrícula es en realidad
un bloque "Lista" que tiene dos "tipos de vista": lista y
cuadrícula. Ve a tu terminal y
ejecuta: php bin/console debug:config netgen_layouts view.block_view Oh, pero escribe netgen
correctamente. Esto muestra la configuración de cómo se representan los bloques.
Busca la sección default
... y desplázate un poco hacia abajo.
Aquí: vemos los dos tipos de vista para los bloques de lista
y de cuadrícula. Como ya he dicho, resulta que
en realidad ambos forman parte del mismo
tipo de bloque llamado list. Sólo son dos tipos de vista diferentes: uno llamado list y otro
grid. Cuando cambias el "tipo de vista" en el administrador de diseños,
en realidad estás cambiando la plantilla que se utiliza para
representar ese bloque. Ejecuta ese mismo comando, pero en lugar de
view.block_views, marca block_definitions: En las definiciones de bloque es donde defines lo que
son realmente los bloques. Así que cada clave raíz de esta configuración representa
un bloque diferente que podemos utilizar dentro
del área de administración. Busca el que se llama list:
aquí está. Define cosas como qué campos de formulario se muestran en el área de
administración y qué "tipos de vista" tiene.
Tiene dos: lista y cuadrícula.
Layouts lee esta configuración para mostrar el elemento select de tipos de vista en el área de administración.
Luego, una vez que seleccionamos el tipo de vista, utiliza la configuración de block_views para saber qué
plantilla mostrar. Vale, basta de configuraciones profundas
y teoría. Vamos a darnos
una nueva forma de representar listas creando un nuevo tipo de vista. Eso a continuación.