Commit graph

5 commits

Author SHA1 Message Date
fb9720fb2a Feature: Update existing posts instead of skipping
- Added update_post() method to WordPress API client
- Added _put() method for HTTP PUT requests
- Modified create_post() to call update_post() when duplicate is found
- Existing posts now get updated with latest content, tags, categories, dates, etc.
- Prevents manual deletion and re-creation workflow
- Added excerpt as explicit parameter to create_post()
- Debug output shows 'Aktualisiere...' message when updating

Example: Re-running import on existing post now updates all fields including newly added author tags
2025-11-05 05:45:24 +01:00
4bac1ad597 Fix: term_exists Fehler - Nutze term_id aus WordPress-Fehlerantwort
Problem:
- Tags/Kategorien wurden als existierend erkannt, aber nicht dem Beitrag zugewiesen
- WordPress-API gibt bei 'term_exists'-Fehler die term_id in den Fehler-Daten zurück
- Diese term_id wurde nicht genutzt, stattdessen wurde nur erneut gesucht

Lösung:
- Extrahiere term_id direkt aus error_data['data']['term_id']
- Bei term_exists-Code: Nutze die zurückgegebene term_id
- Fallback: Suche erneut falls Extraktion fehlschlägt
- Gezielte Suche mit 'search'-Parameter für bessere Performance

Verbesserungen:
- get_tags() und get_categories() mit optionalem search-Parameter
- Debug-Ausgaben: '→ Tag gefunden' statt nur bei Erstellung
- Reduziert API-Calls durch gezielte Suche

Expected Output:
Tags aus Frontmatter: ['OER', 'OEP', ...]
  → Tag 'OER' gefunden (ID: 3866)
  → Tag 'OEP' existiert bereits (ID: 3867)
Gesamt Tag-IDs: [3866, 3867, ...]
2025-10-01 09:49:50 +02:00
99a4a9408f Fix: Frontmatter mit Hash-Kommentaren und Debug-Ausgaben
Fixes:
- Unterstützung für flaches Frontmatter (wenn #commonMetadata: als Kommentar)
- creativeWorkStatus direkt im Frontmatter wird jetzt erkannt
- datePublished direkt im Frontmatter wird jetzt erkannt
- Status 'Published' wird zu 'publish' konvertiert (mit 'publish' in lowercase)
- date_gmt für explizite Datumskontrolle hinzugefügt

Debug-Ausgaben:
- Tag-Verarbeitung: Zeigt gefundene Tags und IDs
- Post-Erstellung: Zeigt gesendete Daten (Tags, Kategorien, Datum)
- WordPress-Response: Zeigt zurückgegebene Tags und Datum
- Verbesserte Erfolgsmeldung mit 

Getestet mit content/beispiel-beitrag.md:
 Status: publish
 Datum: 2025-09-02
 Tags: 6 Stück korrekt extrahiert
2025-10-01 09:22:33 +02:00
9ba1aa7b10 Bugfix: Tag-Duplikate, Post-Duplikate und Veröffentlichungsdatum
Fixes:
- Tag/Kategorie-Erstellung: Bessere Fehlerbehandlung für bereits existierende Tags
- Post-Duplikatsprüfung: Verbesserte Suche mit status='any' und case-insensitive Vergleich
- Veröffentlichungsdatum: datePublished aus Frontmatter wird als WordPress-Datum gesetzt
- Erweiterte Datumsextraktion aus verschiedenen Frontmatter-Strukturen

Neue Datei:
- USAGE_MODES.md: Übersicht der drei Verwendungsmodi
2025-10-01 08:30:07 +02:00
5f923d8ece Initial commit: WordPress News Import System 2025-10-01 06:16:10 +02:00