Hin und wieder kommt es einmal vor, das man alle Kommentare eines Kommentatoren bearbeiten möchte. In meinem konkreten Fall geht es darum unseren Mario seine Kommentare wieder zu verlinken. Da er jetzt ja eine neue Domain hat, möchte ich das seine E-Mail Adresse und seine URL angepasst wird (Dies habe ich natürlich vorher mit ihm abgesprochen). Das ganze geht Leider nicht über das Backend sondern muss über einen SQL-Befehl geschehen. Nun was ist zutun.
Als erstes öffnen wir unser Programm mit dem wir die Datenbank bearbeiten In den meisten Fällen wird dies phpMyAdmin sein. Dort wählen wir die Datenbank aus in welcher sich die WordPress Installation befindet. Solltet ihr diese nicht mehr auswenig Wissen könnt ihr via FTP mal in der wp-config.php nachschauen dort steht zur not dann auch der Benutzername und das Passwort wenn ihr dies auch verlegt habt.
wp-config.php
/** The name of the database for WordPress */ define('DB_NAME', 'database_name_here'); /** MySQL database username */ define('DB_USER', 'username_here'); /** MySQL database password */ define('DB_PASSWORD', 'password_here');
Nun wechseln wir in die Tabelle wp_comments. Hier werden uns jetzt alle Kommentare angezeigt. Wir möchten diese nun Filter und nur Mario seine Kommentare angezeigt bekommen. Dafür suchen wir seine alte E-Mail Adresse aus einen alten Kommentar heraus. Ich nehme hier bewusst die E-Mail Adresse und nicht den Namen, da es ja möglich ist das mehrere Leute den selben Namen zum Kommentieren nehmen aber sehr wahrscheinlich nicht die selbe E-Mail Adresse.
Nachdem wir die alte E-Mail Adresse herausgesucht haben gehen wir im phpMyAdmin und der Tabelle wp_comments in den Suche Reiter. Dort geben in der Spalte comment_author_email seine alte E-Mail Adresse ein. Den Operator lassen wir auf LIKE damit wir den Unterscheid zwischen Groß- und Kleinschreibung Ignorieren. Nun noch auf Ok geklickt und das phpMyAdmin führt einen Befehl aus der ungefähr so ist:
SELECT * FROM `wp_comments` WHERE `comment_author_email` LIKE 'alte_email@domain.de'
Okay so weit so gut. Nun haben wir den Befehl um Mario seine alten Kommentare zu finden. Jetzt wollen wir diese ja noch ändern. Dafür nehmen wir den Update Befehl
UPDATE `wp_comments` SET comment_author='Dangerblood', comment_author_email='neue_email@domain.de', comment_author_url='http://www.schweinehundkiller.de/' WHERE comment_author_email LIKE 'alte_email@domain.de'
Mit dem Befehl Aktualisieren wir jetzt den Namen, die E-Mail Adresse und die URL. Das ganze Kopieren wir in das Textfeld wenn wir in den Reiter SQL gehen. Übersetzt sagen wir der Datenbank “Aktualisiere in der Datenbank wp_comments den Namen auf AB, die E-Mail auf CD, die URL auf EF, aber nur wenn die E-Mail Adresse GH ist.
Bitte Überprüft vor dem Absenden alles sorgfältig auf die Richtigkeit
phpMyAdmin prüft nicht ob die URL/die E-Mail überhaupt existent ist und/oder vom Format überhaupt so bestehen könnte.
Viel Spaß damit
euer Duergy
Hmm… Natürlich kann mans direkt im SQL machen. Komfortabler finde ich da das WP-Plugin “Suchen und Ersetzen” von Frank Bültge…
http://bueltge.de/wp-suchen-und-ersetzen-de-plugin/114/
Auf den ersten Blick sieht es sehr gut aus. Evtl. schaue ich es mir die Tage mal genauer an Danke für den Hinweis.