Beitragstyp in WordPress massenhaft ändern: Beiträge, Seiten und CPTs
Um in WordPress den Beitragstyp massenhaft zu ändern, etwa um Wissensdatenbank-Artikel in Blogbeiträge, Beiträge in Seiten oder Einträge eines eigenen Beitragstyps in einen anderen umzuwandeln, ändern Sie bei jedem Eintrag ein einziges Feld: seinen Beitragstyp. WordPress selbst bietet dafür keine Ansicht, WOLF dagegen hat es als bearbeitbare Spalte und als Option im Bulk Edit. Die Änderung ist ein Klick; geplant werden muss alles, was vom Beitragstyp abhängt: Kategorien, URLs und Templates. Diese Seite zeigt, wie Sie viele Einträge auf einmal umwandeln, was mitwandert und was nicht, und in welcher Reihenfolge die Kategorien erhalten bleiben.
Was sich ändert, wenn sich der Beitragstyp ändert
Jeder Beitrag, jede Seite und jeder Eintrag eines eigenen Beitragstyps ist eine Zeile in derselben Datenbanktabelle, und der Beitragstyp ist eine Spalte dieser Zeile. Wird er geändert, wandert der Eintrag in eine andere Liste im wp-admin, ohne dass etwas kopiert wird. WOLF speichert den neuen Typ mit wp_update_post(), sodass WordPress und andere Plugins eine normale Aktualisierung sehen.
| Bleibt wie es war | Ändert sich mit dem neuen Typ |
|---|---|
| ID, Titel, Inhalt, Auszug, Autor, Veröffentlichungsdatum, Status | Die Admin-Liste, in der der Eintrag erscheint |
| Kommentare, Beitragsbild und alle Eigenen Felder (Post-Meta) | Die URL: Es gilt die Permalink-Struktur des neuen Typs |
Der Slug, es sei denn, ein Eintrag des neuen Typs verwendet ihn bereits (dann hängt WordPress -2 an) | Das Template, mit dem das Theme ihn anzeigt |
| Begriffszuordnungen in der Datenbank | Welche Taxonomien angezeigt und genutzt werden: nur die für den neuen Typ registrierten |
Die letzte Zeile ist diejenige, die viele überrascht. Ein Wissensdatenbank-Plugin registriert eine eigene Taxonomie für Artikelkategorien; Blogbeiträge verwenden die Taxonomie Kategorie (Category). Das sind verschiedene Taxonomien, auch wenn die Begriffsnamen gleich sind, daher erscheint ein umgewandelter Artikel in keiner Beitragskategorie. Eine weitere WordPress-Regel gilt, wenn das Ziel post ist: Ein Beitrag ohne Kategorie erhält beim Speichern die Standardkategorie für Beiträge (Default Post Category) (normalerweise Uncategorized). Einträge, die aus einem Typ ohne Kategorien umgewandelt werden, landen daher in Uncategorized.
Den Beitragstyp vieler Beiträge in WOLF ändern
- Wählen Sie im Beitragstyp-Umschalter des Posts Editor den Quelltyp aus, zum Beispiel Ihre Wissensdatenbank-Artikel.
- Grenzen Sie die Liste im Reiter Filter auf die umzuwandelnden Einträge ein, zum Beispiel eine Artikelkategorie, und klicken Sie auf Filtern (Filter). Ohne Filter gilt der Vorgang für alle Einträge des Typs.
- Öffnen Sie den Reiter Bulk Edit. Setzen Sie im Abschnitt Status und Typen (statuses and types) das Häkchen beim Dropdown Setzen: Beitragstyp (Set: post type) und wählen Sie den Zieltyp.
- Klicken Sie auf Bulk Edit ausführen (Do Bulk Edit) und bestätigen Sie. Die umgewandelten Einträge verschwinden aus der aktuellen Liste, da sie nicht mehr zu diesem Typ gehören. Wählen Sie den Zieltyp im Umschalter aus, um sie zu sehen.
Bei wenigen Einträgen leistet die Spalte Beitragstyp (Post type) der Tabelle dasselbe pro Zeile; sie ist standardmäßig aktiviert und lässt sich im Reiter Einstellungen einschalten, falls sie ausgeblendet ist. Sowohl die Spalte als auch das Dropdown im Bulk Edit listen die Slugs der öffentlichen Beitragstypen auf: post, page, die Slugs eigener Typen und attachment. Wählen Sie niemals attachment: Das ist die Mediathek, und ein Beitrag, der zu einem Medienobjekt wird, hat keine Datei dahinter. Auch in die andere Richtung sollen Mediendateien nicht umgewandelt werden; deshalb ist die Spalte Beitragstyp (Post type) für Medien nicht verfügbar.
Fehlt der Quelltyp im Umschalter, hat sein Plugin ihn als nicht öffentlich registriert. Die Lösung, ein kurzer Filter, steht unter Eigener Beitragstyp wird im Bulk Editor nicht angezeigt. Der allgemeine Ablauf für die Bearbeitung eigener Beitragstypen steht unter Eigene Beitragstypen massenhaft bearbeiten.
Kategorien werden nicht umgewandelt: Die Reihenfolge planen
WOLF bearbeitet Beiträge und deren Begriffszuordnungen; es verwandelt nicht die Begriffe einer Taxonomie in Begriffe einer anderen. Wandeln Sie alle Artikel auf einmal um, landen sie alle in Uncategorized, und die Information, welcher Artikel zu welcher Kategorie gehörte, ist nicht mehr sichtbar. Wandeln Sie stattdessen jeweils eine Quellkategorie um:
- Erstellen Sie zuerst die Zielkategorien unter Beiträge → Kategorien (Posts → Categories).
- Wählen Sie in WOLF den Quelltyp, filtern Sie nach einer Quellkategorie und wandeln Sie den Stapel wie oben beschrieben um.
- Wählen Sie den Zieltyp im Umschalter. Der Stapel ist leicht zu finden: Wählen Sie im Reiter Filter die Kategorie Uncategorized und setzen Sie Änderungsdatum von (Date modified from) auf heute, denn die Umwandlung zählt als Bearbeitung. Klicken Sie auf Filtern (Filter).
- Aktivieren Sie im Reiter Bulk Edit die Taxonomie Kategorie (Category), wählen Sie die Zielkategorie mit dem Verhalten ersetzen (replace) und führen Sie es aus. Die Beiträge wechseln von Uncategorized in die richtige Kategorie.
- Wiederholen Sie das Ganze für die nächste Quellkategorie.
Eine Abkürzung, wenn das Ziel post ist: Setzen Sie die Standardkategorie für Beiträge (Default Post Category) unter Einstellungen → Schreiben (Settings → Writing) vor der Umwandlung jedes Stapels auf die Zielkategorie. Die umgewandelten Beiträge landen dann direkt darin, und Schritt 4 entfällt. Setzen Sie die Standardkategorie anschließend wieder zurück.
Zwei Details. Ein Eintrag, der zu mehreren Quellkategorien gehört, wird mit dem ersten Stapel umgewandelt, der ihn enthält; fügen Sie seine übrigen Kategorien danach mit dem Verhalten anhängen (append) hinzu, wie unter Kategorie massenhaft zu Beiträgen hinzufügen beschrieben. Und Schlagwörter funktionieren genauso: Wissensdatenbank-Schlagwörter sind eine eigene Taxonomie, weisen Sie den umgewandelten Beiträgen also Beitrags-Schlagwörter zu, wenn Sie diese brauchen.
URLs, Templates und andere Nebeneffekte
- Alte URLs funktionieren nicht mehr. Ein Artikel unter
/knowledge-base/reset-password/wird zu einem Beitrag unter der Adresse, die Ihre Beitrags-Permalinks vorgeben, zum Beispiel/reset-password/. WordPress leitet zwischen Beitragstypen nicht zuverlässig weiter; richten Sie daher 301-Weiterleitungen von den alten Adressen ein und aktualisieren Sie interne Links in Ihren Inhalten. Auch die Umwandlung zwischen Beiträgen und Seiten ändert die URLs, sobald beide unterschiedliche Strukturen verwenden, zum Beispiel/blog/%postname%/für Beiträge. - Das Template ändert sich. Der Eintrag wird mit dem Template des neuen Typs angezeigt. Eigene Felder bleiben erhalten, doch das neue Template zeigt nur, wofür es gebaut wurde, und Funktionen des alten Plugins (Bewertungen, Aufrufzähler, verwandte Artikel) gelten nicht mehr.
- Seiten sind hierarchisch. In Seiten umgewandelte Beiträge werden zu Seiten der obersten Ebene. In Beiträge umgewandelte Seiten behalten ihre übergeordnete ID in der Datenbank, die Beiträge ignorieren.
- Taxonomien beider Typen bleiben bestehen. Werden Beiträge mit Kategorien in einen eigenen Typ umgewandelt, der ebenfalls Kategorie (Category) verwendet, bleiben die Kategorien sichtbar. Begriffe von Taxonomien, die der neue Typ nicht nutzt, bleiben in der Datenbank und kehren zurück, wenn Sie die Einträge zurückwandeln.
Sicher testen, umwandeln und zurücksetzen
- Sichern Sie die Datenbank vor einer großen Umwandlung. Eine Änderung des Beitragstyps lässt sich in WOLF rückgängig machen, aber URLs und andere Plugins können darauf reagieren.
- Testen Sie an zwei oder drei Einträgen: Markieren Sie sie in der Tabelle (markierte Zeilen haben Vorrang vor Filtern), führen Sie den Vorgang aus, öffnen Sie sie im Frontend und prüfen Sie die URLs.
- Jede Änderung wird im Verlauf (History) festgehalten. Der Verlauf wird pro Beitragstyp geführt, und zwar unter dem Typ, der beim Ausführen des Vorgangs ausgewählt war. Um eine Umwandlung rückgängig zu machen, wählen Sie daher zuerst den Quelltyp im Umschalter und setzen dann den Vorgang im Reiter History zurück. Die Einträge erhalten ihren alten Typ zurück, und ihre alten Kategorien sind wieder sichtbar, weil diese Zuordnungen nie entfernt wurden.
- Führen Sie die Stapel nacheinander aus und prüfen Sie jeden in der Zielliste, bevor Sie den nächsten beginnen.
Checkliste
- Die Zielkategorien existieren; die Standardkategorie ist auf das Ziel gesetzt (Abkürzung), oder der Stapel wird nach jeder Umwandlung mit ersetzen (replace) neu zugeordnet.
- Das Ziel unter Setzen: Beitragstyp (Set: post type) ist der richtige Slug und nicht
attachment. - Eine Quellkategorie pro Stapel; Einträge mit mehreren Kategorien haben den Rest mit anhängen (append) erhalten.
- 301-Weiterleitungen von den alten URLs sind eingerichtet, und das neue Template zeigt den Inhalt korrekt an.
- Sie wissen, wo Sie zurücksetzen: im Verlauf, mit ausgewähltem Quelltyp.
Verhält sich eine Umwandlung nicht wie beschrieben, eröffnen Sie im WOLF-Support-Forum ein Thema mit Quell- und Zielbeitragstyp und den Plugins, die sie registrieren.