WordPress
Das Orimora-Sync-WordPress-Plugin importiert die veröffentlichten Dokumente einer Ordnerfreigabe als Beiträge oder Seiten nach WordPress. Es ist eine Pull-/Browse-Import-Integration: WordPress ruft Orimora mit einem nur-lesenden Ordnerfreigabe-Token auf, du browst den Ordner im Admin und importierst die ausgewählten Dokumente als Entwürfe. Orimora bleibt die Quelle der Wahrheit für Titel + Rumpf; WordPress besitzt Slug, Publish-Status, SEO und Bild-Anpassungen.
Orimora (Ordnerfreigabe) ──GET /api/v1/documents?format=markdown (Bearer kb_…)──▶ WordPress (browsen → Entwurf importieren)So funktioniert es
Abschnitt betitelt „So funktioniert es“- Öffne in Orimora das Menü einer Kollektion (Kebab oder Rechtsklick) → „Mit einem Dienst
verbinden”, Ziel CMS. Das erzeugt ein nur-lesendes, nur-veröffentlichtes
Ordnerfreigabe-Token (
kb_…), auf genau diesen Ordner beschränkt. - Trage in WordPress → Einstellungen → Orimora Sync die Orimora-URL und das Token ein und konfiguriere das Mapping pro Kollektion (Ziel-Post-Type / Status / Taxonomie).
- Gehe zu Werkzeuge → Orimora Import: browse die veröffentlichten Dokumente des freigegebenen Ordners, wähle die gewünschten aus und importiere sie als Entwürfe. Markdown wird zu nativen Gutenberg-Blöcken; Bilder werden in die Mediathek geladen (kein Hotlinking); Mermaid-Diagramme rendern aus einem lokal gebündelten Skript (kein CDN).
- Re-Import eines Dokuments, das „neuere Version verfügbar” zeigt: ersetzt nur Titel + Rumpf — dein Slug, Status, SEO und deine Bild-Bearbeitungen bleiben erhalten.
Feld-Ownership
Abschnitt betitelt „Feld-Ownership“Dieser Vertrag macht Re-Importe sicher:
| Besitzt | Felder |
|---|---|
| Orimora (Quelle) | Titel, Rumpf |
| WordPress (Ziel) | Slug, Publish-Status, SEO, Bild-Anpassungen |
- Erster Import: Titel + Rumpf + initialer Slug, angelegt als
draft. - Re-Import: nur Titel + Rumpf — alles, was die Redaktion gesetzt hat, bleibt unangetastet. Re-Import ist immer explizit und wird gewarnt (Bestätigungsdialog), weil er lokale Rumpf-Edits überschreibt.
Installation (aus dem Quellcode)
Abschnitt betitelt „Installation (aus dem Quellcode)“git clone https://github.com/Orimora-app/orimora-wordpress-importercd orimora-wordpress-importercomposer install # league/commonmark + Dev-Tools (vendor/ ist gitignored)# dann dieses Verzeichnis nach wp-content/plugins/orimora-sync symlinken oder kopierenKonfiguriere die Verbindung in Einstellungen → Orimora Sync. Das Token wird in einer
autoload=no-Option gespeichert. Betreiber, die Secrets aus der Datenbank heraushalten möchten,
können sie in wp-config.php pinnen (diese überschreiben die gespeicherten Werte):
define( 'ORIMORA_SYNC_BASE_URL', 'https://wiki.example.com' );define( 'ORIMORA_SYNC_TOKEN', 'kb_…' );Sicherheit
Abschnitt betitelt „Sicherheit“- Kein eingehender Endpunkt. Die Vertrauensgrenze ist ausgehend: das Plugin ruft Orimora nur mit dem Ordnerfreigabe-Token über die WordPress-HTTP-API auf. Das Token ist nur-lesend + nur-veröffentlicht (serverseitig erzwungen), kann also weder nach Orimora schreiben noch Entwürfe offenlegen.
- Das Token wird nie geloggt oder ausgegeben. Admin-Aktionen sind nonce- und
capability-geschützt — Verbindung speichern braucht
manage_options, Browsen/Importieren brauchtedit_posts.
v1-Grenzen (bewusst)
Abschnitt betitelt „v1-Grenzen (bewusst)“- Eine Ordnerfreigabe pro Site (mehrere Token-Quellen sind für v2 geplant).
- Mapping-UI ist eine JSON-Textarea (eine Tabelle ist geplant).
- Import ist synchron im Admin-Request (große Ordner → v2 verlagert Upsert + Bild-Sideload in den Action Scheduler).
- Ein Bild-Re-Import erzeugt eine neue Mediendatei in WordPress (die alte verwaist — eine WordPress-Eigenheit, da es kein In-Place-Replace gibt). v2 ergänzt eine Aufräum-Hilfe.
Siehe auch
Abschnitt betitelt „Siehe auch“- Statische Seiten über die Pull-API — dieselbe Ordnerfreigabe, von einem Static-Site-Generator konsumiert
- Kirby — dasselbe Browse-Import-Muster für Kirby
- REST-API Überblick — die Pull-API, die das Plugin konsumiert
- Berechtigungen & Gruppen — die Capability Ordner freigeben, die das Token erzeugt