Todos los artículos

No Necesitas una Base de Datos. Usa Statamic

Julian Beaujardin
Julian Beaujardin August 9th, 2024

Statamic es un Sistema de Gestión de Contenidos (CMS) potente y flexible diseñado para simplificar el proceso de creación y gestión de sitios web. Uno de los aspectos más únicos de Statamic es que no depende de una base de datos tradicional como MySQL o PostgreSQL. En su lugar, utiliza archivos planos para el almacenamiento de contenido, lo que ofrece varias ventajas. En este artículo, exploraremos por qué no necesitas una base de datos con Statamic y proporcionaremos un ejemplo de código para ilustrar cómo funciona.

Ventajas de Usar Archivos Planos en Statamic

  1. Simplicidad y Velocidad:

    • Los archivos planos son archivos de texto simples (generalmente Markdown o YAML) que son fáciles de leer y escribir.
    • Eliminan la necesidad de consultas complejas a la base de datos, lo que resulta en una recuperación y renderización de contenido más rápida.
  2. Control de Versiones:

    • Dado que todo el contenido se almacena en archivos, puedes integrar fácilmente Statamic con sistemas de control de versiones como Git.
    • Esto facilita el seguimiento de cambios, la colaboración con miembros del equipo y la posibilidad de revertir a versiones anteriores si es necesario.
  3. Portabilidad:

    • Mover un sitio de Statamic de un servidor a otro es sencillo porque no hay una base de datos que exportar e importar.
    • Todo el contenido y la configuración se almacenan en archivos, lo que hace que el sitio sea altamente portátil.
  4. Escalabilidad:

    • Los archivos planos pueden manejar una cantidad sorprendente de tráfico y datos.
    • Para la mayoría de los sitios web pequeños y medianos, los beneficios de rendimiento de los archivos planos superan la necesidad de una base de datos tradicional.
  5. Seguridad:

    • Sin una base de datos, hay un vector de ataque menos para que los actores malintencionados exploten.
    • Los archivos planos pueden ser asegurados con permisos de archivos y controles de acceso adecuados.

Ejemplo de Código: Creando una Entrada de Blog en Statamic

Para ilustrar cómo funciona Statamic sin una base de datos, vamos a crear una simple entrada de blog.

  1. Instalar Statamic: Primero, asegúrate de tener Statamic instalado. Puedes seguir la guía de instalación oficial si no lo has hecho.

  2. Crear una Colección: En Statamic, las colecciones se utilizan para agrupar tipos similares de contenido. Crearemos una colección blog.

    php please make:collection blog
  3. Definir la Colección de Blog: Este comando crea un directorio blog bajo content/collections. Definiremos la configuración de nuestra colección en content/collections/blog.yaml.

    title: Blog route: /blog/{slug} template: blog layout: layout sort: date:desc
  4. Crear una Entrada de Blog: Ahora, vamos a crear una nueva entrada de blog en el directorio content/collections/blog. Crea un archivo llamado 2024-08-05-first-post.md.

    --- title: "Mi Primera Entrada de Blog" date: 2024-08-05 ---

    Agrega contenido al archivo:

    # Mi Primera Entrada de Blog Bienvenido a mi primera entrada de blog en Statamic. Esta entrada se almacena como un archivo plano y no requiere una base de datos.
  5. Configurar la Plantilla: Crea una plantilla para las entradas de blog en resources/views/templates/blog.antlers.html.

    <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>{{ title }}</title> </head> <body> <article> <h1>{{ title }}</h1> <time datetime="{{ date }}">{{ date format="F j, Y" }}</time> <div> {{ content | markdown }} </div> </article> </body> </html>
  6. Ver la Entrada de Blog: Inicia tu servidor de desarrollo local:

    php please serve

    Navega a http://localhost:8080/blog/mi-primera-entrada-de-blog para ver tu nueva entrada de blog.

Conclusión

El enfoque de archivos planos de Statamic ofrece numerosas ventajas, incluida la simplicidad, la velocidad y la facilidad de uso. Al almacenar el contenido en archivos planos, puedes evitar las complejidades y el sobrecoste asociados con las bases de datos tradicionales. Esto hace que Statamic sea una excelente opción para sitios web pequeños y medianos y para desarrolladores que prefieren un flujo de trabajo sencillo y controlado por versiones. Si buscas un CMS que no requiera una base de datos, Statamic definitivamente vale la pena considerar.

Krodox Official Web Site es una Marca Registrada de Julian Beaujardin

Hecho con Laravel & Statamic.
v12.13.0 (PHP v8.4.1)

Derechos de autor © 2015-2025 Krodox Official Web Site LLC.

Drops