WPs merkwürdige Nutzung von guid

WordPress speichert beim Anlegen eines neuen Beitrages dessen URL (natürlich) in der Datenbank – in der Form http://www.meineseite.de/?p=1
Wordpress nennt das die guid, die mittlerweile nicht mehr als Permalink(-ersatz) zu verstehen ist, sondern lediglich ein „Link zum Post“, der Blogposts eindeutig identifizierbar machen soll.

guid 
(string) A link to the post. Note: One cannot rely upon the GUID to be the permalink (as it previously was in pre-2.5), Nor can you expect it to be a valid link to the post. It’s mearly a unique identifier, which so happens to be a link to the post at present.

Function Reference/get post

Das ist dumm, wenn man später einmal auf eine andere Domain umzieht, denn Plugins nutzen sie immer noch als Permalinkersatz. Dann muss man die guid aller Posts händisch ändern – in der Datenbank. In der WordPress-Administration sieht man diese guid gar nicht.

In der Datenbank selbst muss man folgende Anweisung nutzen:

update [table_name] set [field_name] = 
replace([field_name],'[string_to_find]','[string_to_replace]');

Für unser Beispiel also:

update wp_posts set guid = 
replace(guid,'www.meineseite.de','www.meineneueseite.de');

So auch nachzulesen im WordPress Codex: Domain Name Change. Wer sich die Arbeit sparen will, kann auch ein Script wie dieses nutzen: WordPress Scripts

Persönliche Notiz:
Für mich leider wieder einmal eine Eigenschaft von WordPress, die mir sauer aufstößt – was in letzter Zeit eindeutig zu oft passiert.

Ein Gedanke zu „WPs merkwürdige Nutzung von guid“

  1. Ah DANKE! Und ich dachte schon, ich muss jede GUID händisch anpassen!! 😀 Hat wunderbar funktioniert! 907 Datensätze auf einmal geändert yuhu!

Schreibe einen Kommentar

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