Files
Asger Geel WeirsøeandClaude Opus 5.5 aeb7c88949 fix: billeder i udkast og preview uden sitemap-link
Zola gør relative billedstier absolutte, så omskrivningen til webp skal matche
den form. Ikke-konverterbare billeder får en rod-relativ sti, som preview kan flytte.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 16:47:08 +01:00

115 lines
5.7 KiB
HTML

{%- set preview = get_env(name="PW_PREVIEW", default="") == "1" -%}
{%- set seo = load_data(path="data/seo.json") -%}
{%- set lang = "da" -%}
{%- set noindex = preview -%}
{%- set alternates = [] -%}
{%- set titel = "" -%}
{%- set desc = config.description -%}
{%- set sti = "/404" -%}
{%- set artikel = false -%}
{%- if page -%}{%- set meta = page -%}{%- elif section -%}{%- set meta = section -%}{%- endif -%}
{%- if current_path -%}{%- set sti = current_path | trim_end(pat="/") -%}{%- endif -%}
{%- if sti == "" -%}{%- set sti = "/" -%}{%- endif -%}
{%- if meta -%}
{%- if meta.title -%}{%- set titel = meta.title -%}{%- endif -%}
{%- if meta.description -%}{%- set desc = meta.description -%}{%- endif -%}
{%- if meta.extra.lang -%}{%- set lang = meta.extra.lang -%}{%- endif -%}
{%- if meta.extra.noindex -%}{%- set noindex = true -%}{%- endif -%}
{%- if meta.extra.alternates -%}{%- set alternates = meta.extra.alternates -%}{%- endif -%}
{%- if page and page.date -%}{%- set artikel = true -%}{%- endif -%}
{%- elif term -%}
{%- set titel = "#" ~ term.name -%}{%- set desc = "Indlæg om " ~ term.name ~ "." -%}{%- set noindex = true -%}
{%- elif taxonomy -%}
{%- set titel = "Tags" -%}{%- set desc = "Alle emner på bloggen." -%}{%- set noindex = true -%}
{%- else -%}
{%- set titel = "404" -%}
{%- endif -%}
{%- if titel -%}{%- set sidetitel = titel ~ " · " ~ config.title -%}{%- else -%}{%- set sidetitel = config.title ~ " · Datalog & Technical Solution Architect" -%}{%- endif -%}
{%- set kanonisk = config.extra.site ~ sti -%}
<!doctype html>
<html lang="{{ lang }}"{% if preview %} data-base="/udkast"{% endif %}>
<head>
{% include "partials/banner.html" %}
{% include "partials/theme.html" %}
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>{{ sidetitel }}</title>
<meta name="description" content="{{ desc }}" />
<meta name="author" content="Asger Weirsøe" />
<meta name="google-site-verification" content="l5LfnJZFSkVCauhwN9pND_gvxdnZJbx3FM6fpEK8nzE" />
<meta name="robots" content="{% if noindex %}noindex, follow{% else %}index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1{% endif %}" />
<link rel="canonical" href="{{ kanonisk | safe }}" />
<!-- Open Graph -->
<meta property="og:type" content="{% if artikel %}article{% else %}website{% endif %}" />
<meta property="og:site_name" content="{{ config.title }}" />
<meta property="og:title" content="{{ sidetitel }}" />
<meta property="og:description" content="{{ desc }}" />
<meta property="og:url" content="{{ kanonisk | safe }}" />
<meta property="og:locale" content="{% if lang == "en" %}en_GB{% else %}da_DK{% endif %}" />
{%- for a in alternates %}
<link rel="alternate" hreflang="{{ a.lang }}" href="{{ (config.extra.site ~ a.path) | safe }}" />
{%- if a.lang == "da" %}
<link rel="alternate" hreflang="x-default" href="{{ (config.extra.site ~ a.path) | safe }}" />
{%- endif %}
{%- endfor %}
<meta property="og:image" content="{{ (config.extra.site ~ "/og.png") | safe }}" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
<meta property="og:image:alt" content="{{ sidetitel }}" />
{%- if artikel %}
<meta property="article:published_time" content="{{ page.date | date(format="%Y-%m-%dT%H:%M:%S.000Z") }}" />
<meta property="article:modified_time" content="{{ (page.updated or page.date) | date(format="%Y-%m-%dT%H:%M:%S.000Z") }}" />
<meta property="article:author" content="Asger Weirsøe" />
{%- for t in page.taxonomies.tags or page.extra.tags or [] %}
<meta property="article:tag" content="{{ t }}" />
{%- endfor %}
{%- endif %}
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{{ sidetitel }}" />
<meta name="twitter:description" content="{{ desc }}" />
<meta name="twitter:image" content="{{ (config.extra.site ~ "/og.png") | safe }}" />
<meta name="theme-color" content="#0b0f17" media="(prefers-color-scheme: dark)" />
<meta name="theme-color" content="#f6f8fb" media="(prefers-color-scheme: light)" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
<link rel="manifest" href="/site.webmanifest" />
{%- if not preview %}
<link rel="sitemap" href="/sitemap-index.xml" />
{%- endif %}
<link rel="alternate" type="application/rss+xml" title="{{ config.title }}" href="/rss.xml" />
<link rel="me" href="https://mastodon.social/@asgerweirsoee" />
<link rel="stylesheet" href="{{ get_url(path="css/site.css", cachebust=true) | replace(from=config.base_url, to="") | safe }}" />
{{ <ld g={seo.baseGraph} /> }}
{%- block jsonld %}{% endblock %}
{% include "partials/matomo.html" %}
<script type="speculationrules">{"prefetch":[{"where":{"href_matches":"/*"},"eagerness":"moderate"}]}</script>
{%- if not preview %}
<script src="/registerSW.js"></script>
{%- endif %}
</head>
<body class="min-h-screen flex flex-col antialiased">
{%- if preview %}
<div class="sticky top-0 z-50 bg-amber-400 px-4 py-2 text-center text-sm font-semibold text-black">
UDKAST, ikke udgivet. <a href="/udkast/" class="underline">Tilbage til godkendelse</a>
</div>
{%- endif %}
{%- set nav = config.extra.nav_en if lang == "en" else config.extra.nav %}
{%- set hjem = "/en" if lang == "en" else "/" %}
{%- set andet = [a for a in alternates if a.lang != lang] | first %}
{% include "partials/header.html" %}
<main class="mx-auto w-full max-w-3xl flex-1 px-5 py-12">
{% block main %}{% endblock %}
</main>
{% include "partials/footer.html" %}
{% include "partials/palette.html" %}
{% include "partials/cookie.html" %}
{% include "partials/konami.html" %}
</body>
</html>