Crea y pasa datos a una plantilla de blog personalizada
Ahora que ya tienes una plantilla para tus páginas, ¡es hora de añadir una plantilla para las entradas del blog!
Prepárate para...
- Crear una nueva plantilla de entrada de blog para tus archivos Markdown
- Pasar valores frontmatter YAML como props al componente plantilla
Añade una plantilla a las entradas de tu blog
Sección titulada Añade una plantilla a las entradas de tu blogAl incluir la propiedad frontmatter layout
en un archivo .md
, todos los valores YAML de frontmatter estarán disponibles para el archivo plantilla.
-
Crea un nuevo archivo en
src/layouts/MarkdownPostLayout.astro
. -
Copia el siguiente código en
MarkdownPostLayout.astro
. -
Añade la siguiente propiedad frontmatter en
post-1.md
. -
Comprueba de nuevo la vista previa de tu navegador en
http://localhost:4321/posts/post-1
y observa lo que la plantilla ha añadido a tu página. -
Añade la misma propiedad plantilla a tus otras dos publicaciones
post-2.md
ypost-3.md
. Comprueba en tu navegador que el plantilla también se aplica a estas publicaciones.
Al utilizar plantillas, ahora tienes la opción de incluir elementos, como un título de página, en el contenido Markdown o en la plantilla. Recuerda inspeccionar visualmente la vista previa de tu página y realizar los ajustes necesarios para evitar elementos duplicados.
Pruébalo tú mismo - Personaliza la plantilla de las publicaciones de tu blog
Sección titulada Pruébalo tú mismo - Personaliza la plantilla de las publicaciones de tu blogReto: Identifica los elementos comunes a cada publicación del blog, y utiliza MarkdownPostLayout.astro
para renderizarlos, en lugar de escribirlos en tu Markdown en post-1.md
y en cada futura publicación del blog.
He aquí un ejemplo de refactorización de tu código para incluir la pubDate
en el componente plantilla en lugar de escribirla en el cuerpo de tu Markdown:
Refactoriza todo lo que consideres útil y añade a tu plantilla todo lo que quieras, ¡recordando que todo lo que añadas a tu plantilla es una cosa menos que escribirás en todas y cada una de las publicaciones de tu blog!
Este es un ejemplo de un plantilla refactorizada que deja sólo el contenido individual de la publicación del blog renderizado por el slot. Siéntete libre de usarlo o de crear el tuyo propio.
Todo lo que se muestre en la plantilla no tiene que escribirse en la publicación del blog. Si observas alguna duplicación al comprobar la vista previa de tu navegador, asegúrate de eliminar el contenido de tu archivo Markdown.
Pon a prueba tus conocimientos
Sección titulada Pon a prueba tus conocimientos¿Puedes averiguar qué debe ir en los espacios en blanco para que los dos componentes siguientes produzcan juntos un código de Astro que funcione?
-
¡Muestra los espacios en blanco rellenados!