Den Autor von WordPress Artikeln nach Kategorien ändern

Ich stand neulich vor der Aufgabe, die Autorenschaft von unzähligen WordPress Beiträgen auf einen anderen Autor zu ändern. Nun war es nicht so, dass ich einfach sagen konnte: setze alle Beiträge von Autor x auf Autor y. Einziges gemeinsames Merkmal dieser Artikel war, dass sie alle in derselben Kategorie waren. Also habe ich mir schnell die nötigen IDs aus den Tabellen herausgesucht, ein SQL Abfragefenster in phpmyAdmin geöffnet und los gings.

UPDATE wp_posts LEFT JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id)
LEFT JOIN wp_term_taxonomy ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id)
SET wp_posts.post_author=42
WHERE wp_posts.post_status = 'publish' AND wp_term_taxonomy.taxonomy = 'category'
AND wp_term_taxonomy.term_id = 666;

Ja, ziemlich viel kryptisches Zeugs, aber ich erkläre es ganz kurz. Grundannahme ist, dass euer Tabellenpräfix das standardisierte wp_ ist. Sollte dem nicht so sein, müsst ihr eben in meiner Abfrage das wp_ durch euer Tabellenpräfix ersetzen.
Weiterhin trägt bei mir der neue Autor die ID 42 (findet ihr in der Tabelle wp_users heraus) und die besagte Kategorie die ID 666 (findet ihr in wp_terms heraus).
Wenn sich die betreffenden Beiträge nicht auf eine gemeinsame Kategorie beziehen sondern auf ein Schlagwort, muss statt ‚category‘ eben ‚term‘ stehen.

Wenn ihr nicht an die Datenbank gelangt oder dort keine SQL Abfragen absetzen könnt, weil euch das der Webhoster nicht gestattet – dann wechselt den Provider, denn das sollte heute Grundstandard sein.
Ich kann euch da nur all-inkl.com empfehlen, ein Webhoster mit Sitz in Deutschland und hervorragendem Preis-Leistungsverhältnis.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.