SEO: metadatos, datos estructurados y encabezados semánticos
All checks were successful
Zola / build-and-deploy (push) Successful in 17s

- <html lang="es"> en lugar de "en"
- <title> con sufijo del sitio, canonical, meta robots y author
- Open Graph completo (url, type, locale, image, article:*) y Twitter Card
- JSON-LD: WebSite + Person en portada, BlogPosting en cada post
- rel="me" hacia Mastodon/GitHub/X
- Imagen para redes (og-image.png) y favicon
- Títulos de página como <h1> (antes <div>); listados y modal de búsqueda en <h2>
- Notas sueltas con noindex y fuera del sitemap; sin paginación duplicada
- Páginas de etiquetas y 404 en español, con títulos propios
- alt/width/height/lazy en los badges de la portada
- MathJax solo cuando un post lo pida ([extra] mathjax = true)
- Descripción en /posts y etiquetas en "Hola Mundo"
- Limpieza de ficheros de respaldo del editor + .gitignore

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Alejandro Guerrero 2026-09-25 12:10:08 +02:00
parent 1d74bceae8
commit 00dc194e86
22 changed files with 714 additions and 26 deletions

View file

@ -0,0 +1,55 @@
{% macro list_post(page) %}
<li class="list-item">
<section>
<div class="post-header">
<time>{{ page.date | date(format="%Y-%m-%d") }}</time>
<div>
<h2 class="title">
<a href={{ page.permalink | safe }}>{{ page.title }}</a>
{% if page.draft %}
<span class="draft-label">DRAFT</span>
{% endif %}
</h2>
<div class="meta">
<div class="description">
{% if page.description %}
{{ page.description }}
{% elif page.summary %}
{{ page.summary | safe }}&hellip;
{% else %}
{% set hide_read_more = true %}
{% endif %}
</div>
{% if not hide_read_more %}
<a class="readmore" href={{ page.permalink | safe }}>Read more ⟶</a>
{% endif %}
</div>
</div>
</div>
</section>
</li>
{% endmacro list_post %}
{% macro list_posts(pages) %}
<ul>
{%- for page in pages %}
{{ post_macros::list_post(page=page) }}
{% endfor -%}
</ul>
{% endmacro list_posts %}
{% macro page_header(title) %}
{% if title %}
<h1 class="page-header">
{{ title }}
</h1>
{% endif %}
{% endmacro page_header %}
{% macro site_title() %}
{{ config.title | default(value="Home") }}
{% endmacro %}