Will man blogweite Inhalte, also Wörter, Phrasen oder Textbausteine, die sich durch den ganzen Blog ziehen ändern, so kann dies je nach Größe des Blogs und Anzahl der Artikel zu einem wahren Kampf ausarten.
Bei 10, 20 oder 50 Artikeln mag eine einzelne Bearbeitung der jeweiligen Artikel noch machbar sein. Bei 500, 1000 oder noch mehr Artikeln stellt dies jedoch keine Option mehr dar.
Um seitenweit Inhalte in allen Blogartikel austauschen zu können, gibt es mehrere Möglichkeiten. So können zum Beispiel per SQL-Befehl Inhalte direkt in der WordPress-Datenbank ausgetauscht oder mit Hilfe eines Plugins eine Massenersetzung durchgeführt werden. Auf diese beiden Möglichkeiten werde ich nachfolgend kurz eingehen.
Suchen & Ersetzen in WordPress per SQL
Vorsicht: Änderungen per SQL-Befehl sind irreversibel. Vor der Ausführung der nachfolgenden Statements sollte unbedingt ein Backup der entsprechenden Tabelle angelegt werden!
Zuallererst wird eine Eingabemöglichkeit zur Ausführung von SQL-Befehlen benötigt. Dies kann, sofern vorhanden, über eine bestehende phpMyAdmin-Installation geschehen. Wer in der Shell fit ist, kann auch den MYSQL-Console-Client nutzen. Wer weder das eine, noch das andere bevorzugt, kann auch ein kostenloses WordPress-Plugin wie den WP-DBManager nutzen.
Ersetzt wird nun mit folgendem SQL-Update-Statement:
1 |
UPDATE wp_posts SET post_content = REPLACE ( post_content, 'suche-nach', 'ersetze-mit' ); |
Es wird also eine Aktualisierung der post_content-Tabelle durchgeführt, die die Inhalte aller Posts enthält. Die Parameter „suche-nach“ und „ersetze-mit“ müssen natürlich gegen das Suchwort und den neuen Text ausgetauscht werden.
Möchte man zum Beispiel alle Links im Blog auf „DoFollow“ setzen, so eignet sich folgendes Statement:
1 |
UPDATE wp_posts SET post_content = REPLACE ( post_content, 'rel="nofollow"', '' ); |
Ein weiteres Beispiel wäre das Ersetzen einer Domain, auf die man aus vielen Artikeln verlinkt hat. Würde ab morgen nicht mehr unter „google.de“ sondern unter „datenkrake.net“ erreichbar sein, so würde folgender Befehl seinen Zweck erfüllen:
1 |
UPDATE wp_posts SET post_content = REPLACE ( post_content, 'google.de', 'datenkrake.net' ); |
Weitere denkbare Szenarien, sind das Austauschen von Keywords oder Zeichenfehlern (z.B. †statt ä).
(Solltet ihr Hilfe beim Formulieren eines eigenen Statements benötigen, hinterlasst einen Kommentar unter dem Artikel.)
Suchen & Ersetzen per WordPress-Plugin
Alternativ kann auch ein WordPress-Plugin zur Massenersetzung genutzt werden. Ein einfaches aber effizientes Plugin hierfür ist „Search and Replace“ von Frank Bültge, welches im WordPress-Plugin-Directory zum Download bereit steht.
Nach der Installation findet sich das Plugin im „Werkzeuge“-Menü der linken Sidebar im WordPress Backend. Innerhalb des Plugins kann unterschieden werden, ob in allen oder nur in bestimmten WordPress-Tabellen gesucht und ersetzt werden soll.
Im Prinzip macht das Plugin das gleiche wie die oben genannten SQL-Statements. Ob man die bequemere Oberfläche oder die größere Freiheit beim direkten Schreiben von SQL-Statements bevorzugt, ist Geschmackssache und von Fall zu Fall zu unterscheiden.