erster brauchbarer stand.

This commit is contained in:
maik
2026-08-18 15:32:41 +02:00
commit 553247cdfb
460 changed files with 13751 additions and 0 deletions
+84
View File
@@ -0,0 +1,84 @@
# Offener Prozess Interaktive Karte (Hugo)
Hugo-Neubau von [map.offener-prozess.de](https://map.offener-prozess.de/)
(Ablösung des alten WordPress/Listable-Setups). Interaktive Karte der
Schauplätze des NSU-Komplexes mit **Leaflet + OpenStreetMap** (statt der alten
Google-Maps-/Mapbox-Einbindung), im Layout ans Original angelehnt (Split-View:
Kartenliste links, Karte rechts), umgesetzt mit dem Theme
[`themes/op-dz/`](themes/op-dz/) (UIkit 3, Schrift *ABC Favorit*, alle Assets
lokal/DSGVO-konform).
## Starten
```bash
hugo server # Vorschau: http://localhost:1313
hugo --gc --minify # Produktions-Build nach ./public
```
Voraussetzung: **Hugo Extended ≥ 0.116**.
## Inhalt
**118 Schauplätze** wurden von der Altseite importiert (112 mit Koordinaten,
6 ohne erscheinen als Cards, aber nicht als Marker), verteilt auf **18
Kategorien** (Mordanschläge, Raubüberfälle, Aufenthaltsorte, Wohnungen des Trios,
Fanzines, Unterstützende, Behörden …). Texte, Adressen, Koordinaten, Quellen und
Bilder stammen von map.offener-prozess.de.
## Struktur
```
hugo.toml Konfiguration: Taxonomie, Menüs, Kartenkacheln, Params
data/kategorien.yaml Kategorie → Markerfarbe (Reihenfolge = Filter-Reihenfolge)
content/
_index.md Startseite (= Karten-Explorer)
schauplaetze/<slug>/ je Schauplatz ein Page-Bundle (index.md + optional cover.*)
so-funktionierts.md, ueber.md
layouts/index.html Startseite → Explorer-Partial
themes/op-dz/
layouts/partials/
explorer.html Split-View (Liste + Suche + Filter + Karte)
karte.html Karten-Container + eingebettete Marker-Daten (JSON)
schauplatz-card.html gelbe Card (mit data-Attributen für JS-Filter)
layouts/schauplaetze/ list.html (Explorer) + single.html (Detail mit Sidebar)
layouts/_default/term.html Kategorie-Seite (gefilterter Explorer)
assets/js/map.js Leaflet: Cluster, Kategorie-Filter, Textsuche, Card↔Marker
static/vendor/ leaflet, markercluster, uikit (alle lokal)
```
## Einen Schauplatz anlegen
Neuer Ordner `content/schauplaetze/<slug>/index.md`:
```yaml
---
title: "Titel"
subtitle: "Namen / Kurzkontext"
date: 2004-02-25
kategorien: ["Mordanschläge"] # muss zu data/kategorien.yaml passen
lat: 54.1104949
lng: 12.1544098
address: "Straße Nr, PLZ Ort"
datum: "25.02.2004" # optionales Anzeige-Datum in der Sidebar
quelle: "Quellenangabe"
featured: true # optional → „Tipp!"-Markierung
---
Fließtext …
```
Der Punkt erscheint automatisch auf allen Karten (Start, Kategorie) und bekommt
eine Detailseite mit Mini-Karte + „Anfahrt per OpenStreetMap". Ein Bild
`cover.jpg` im selben Ordner wird als Card-/Kopfbild genutzt.
## Karte / Kacheln
Standard: OpenStreetMap. Eigener Tile-Server (OSM-Usage-Policy!) in `hugo.toml`
unter `[params.map]` (`tileURL`, `attribution`). 118 Marker werden per
Leaflet.markercluster gebündelt; Farbe = Kategorie (`data/kategorien.yaml`).
## Erneut importieren
Der Import-Script (WP-Job-Manager-AJAX `jm-ajax/get_listings/` + Detailseiten)
liegt unter `scratchpad/import.py`. Erneut ausführbar, überschreibt die Bundles
unter `content/schauplaetze/` (das `_index.md` bleibt).