WordPress Beiträge im Markdown-Format exportieren und importieren

Das Jetpack-Plugin für WordPress ermöglicht das Schreiben von Beiträgen und das Erstellen von Seiten mit Hilfe des Markdown-Syntaxes, sofern das entsprechende Feature aktiviert ist.

Jetpack möchte normalerweise, dass man die Seite mit einem WordPress.com-Account verbindet, das kann man im Falle von Markdown durch das Aktivieren des Entwicklungsmodus verhindern.

Eines der Probleme beim Einsatz des Markdown-Formats in Kombination mit WordPress ist der Export und Import. WordPress ermöglicht den Export und Import normalerweise relativ einfach und unkompliziert über das WordPress Importer-Plugin. Problem dabei ist jedoch, dass die Beiträge beim Export von Markdown zu HTML umgewandelt werden. Möchte man die Beiträge anschließend erneut editieren (nachdem sie importiert wurden), liegen sie nicht mehr im Markdown-Format, sondern nur noch als HTML-Code vor.

Um das zu vermeiden und die Beiträge auch nach einem Ex- und Import im Markdown-Format vorliegen zu haben, hilft die nachfolgende Anleitung. Dabei wird auf die beiden Plugins WP All Import und WP All Export zurückgegriffen.

Export

Um den Export zu erstellen, wie folgt vorgehen:

  1. Neuen Export erstellen (über WP All Export)
  2. Gewünschten Post-Type exportieren
  3. Gewünschte Felder auswählen
  4. Anschließend „Add Field“ klicken
    1. Feld ID auswählen
    2. Name des gewünschten Feldes ist post_content_filtered
    3. Erweitert anklicken
    4. „Exportiere den Wert der von einer PHP Funktion zurückgegeben wurde“ auswählen
    5. Als Funktionsname get_post_content_filtered eintragen
    6. Als Code hinterlegen und speichern (wichtig!):
    <?php
    
    function get_post_content_filtered($post_id) {
    $post = get_post($post_id);
    return $post->post_content_filtered;
    }
    ?>
    
  5. Unter „Export File Options“ „XML-Feed“ auswählen
  6. Continue klicken
  7. Export starten
  8. Paket herunterladen

Import

Um die Beiträge im Markdown-Format auf der neuen Seite zu importieren, wie folgt vorgehen. Auf jeden Fall muss vor dem Import das Jetpack-Plugin installiert und der Markdown-Support aktiviert sein (das gilt auch für CPT, für die ggf. Markdown-Code importiert werden soll).

  1. Import starten
  2. Das Paket, das vorhin nach dem Export heruntergeladen wurde nun hochladen
  3. Gewünschten Post Type (Standard: Post / Beitrag) auswählen
  4. Standard bestätigen – weiter zu Schritt 3
  5. Inhalt auf „Text“ ändern und dort [htmlspecialchars_decode({post_content_filtered[1]})] einfügen
  6. In den erweiterten Optionen „Behalte Zeilenumbruch der Datei“ auswählen
  7. Weiter zu Schritt 4
  8. Haken bei Aktualisiere Posts entfernen

Anschließend werden alle Beiträge importiert und der Markdown-Code liegt weiterhin vor.

Schreibe einen Kommentar