Páginas

Las páginas son componentes de Astro que se encuentran en la subcarpeta src/pages/. Ellas son las responsables de manejar el enrutamiento, la carga de datos y el diseño general de cada página HTML de tu proyecto.

Astro es compatible con los siguientes tipos de archivos en el directorio src/pages/:

Astro aprovecha una estrategia de enrutamiento llamada enrutamiento basado en archivos. Cada archivo .astro en la carpeta src/pages se convierte en una página o un endpoint en tu proyecto de acuerdo a su ruta.

Un archivo puede generar múltiples páginas usando enrutamiento dinámico. Esto te permite crear páginas incluso si tu contenido está fuera del directorio especial /pages/, como en una colección de contenido o un CMS.

📚 Lee más sobre enrutamiento en Astro

Escribe HTML estándar elementos <a> en tus páginas Astro para enlazar a otras páginas en tu sitio. Usa una ruta URL relativa a tu dominio raíz como enlace, no una ruta de archivo relativa.

Por ejemplo, para enlazar a https://example.com/authors/sonali/ desde cualquier otra página en example.com:

src/pages/index.astro
Lee más <a href="/authors/sonali/">sobre Sonali</a>.

Las páginas de Astro utilizan la extensión .astro y tienen las mismas funcionalidades que los componentes de Astro.

src/pages/index.astro
---
---
<html lang="es">
<head>
<title>Mi página de inicio</title>
</head>
<body>
<h1>Bienvenido a mi sitio web</h1>
</body>
</html>

Para evitar repetir los mismos elementos HTML en cada página, puedes mover los elementos comunes <head> y <body> a sus propios componentes de plantilla. Puedes usar tantos o tan pocos componentes de plantilla como desees.

src/pages/index.astro
---
import MySiteLayout from '../layouts/MySiteLayout.astro';
---
<MySiteLayout>
<p>El contenido de mi página envuelto en un componente de plantilla</p>
</MySiteLayout>

📚 Lee más sobre componentes de plantilla en Astro.

Astro trata los archivos Markdown (.md) dentro de src/pages/ como páginas en tu proyecto. Si tienes la integración de MDX instalada, también procesa los archivos MDX (.mdx) de la misma manera. Estos se usan comúnmente para páginas con mucho texto, como artículos de blog y documentación.

Las colecciones de contenido de páginas Markdown o MDX en src/content/ pueden ser usadas para generar páginas dinámicamente.

Las plantillas de página son especialmente útiles para archivos Markdown. Los archivos Markdown pueden usar la propiedad de frontmatter layout para especificar un componente de plantilla que envolverá el contenido de Markdown en un documento de página <html>...</html>.

src/pages/page.md
---
layout: '../layouts/MySiteLayout.astro'
title: 'Mis páginas Markdown'
---
# Título
Esta es mi página, escrita en **Markdown.**

📚 Lee más sobre Markdown en Astro.

Los archivos .html pueden ser colocados en src/pages/ y usados directamente como páginas en tu proyecto. Ten en cuenta que algunas funcionalidades clave de Astro no son compatibles con Componentes HTML.

Para crear una página de error 404 personalizada, puedes crear un archivo 404.astro o 404.md en /src/pages.

Esto generará una página 404.html que la mayoría de los servicios de despliegue encontrarán y usarán.