tobias.kochs-online.net

OpenID 3.3.3 & WordPress 2.9.x

| 2 Comments

Heute war bei mir Wartungssonntag für WordPress. Ich habe all die Spam-Kommentare entfernt, die Akismet nicht aussortiert hatte und ein paar der Plugins, die wir in WordPress einsetzen, aktualisiert. Leider hatte ich nicht genug Zeit, um auch die WordPress-Installation selbst auf Version 3.0.1 zu aktualisieren, weshalb hier noch immer 2.9.2 läuft. Das war auch die Ursache für ein Problem, das beim Update des OpenID-Plugins auf die Version 3.3.3 auftrat. Der Zugriff auf das WordPress Admin Panel wurde mit folgendem PHP-Fehler quittiert:

Call to undefined function get_user_meta()

WordPress Codex verrät einem dazu, dass die Funktion get_user_meta erst mit WordPress-Version 3.0 eingeführt wurde. Sie löste die veraltete Funktion get_usermeta ab, die in früheren WordPress-Versionen verfügbar war. Daher habe ich einen kleinen Hack ausgeheckt (haha!), um das OpenID-Plugin auch mit meiner antiken 2.9.2-Version von WordPress ans Laufen zu bekommen.

Dazu müssen die folgenden Zeilen oben in die Plugin-Dateien admin_panels.php, server.php und server_ext.php eingefügt werden:

/**
* Hotfix for WordPress 2.x
*/
if ( !function_exists('get_user_meta') ) {
function get_user_meta($user_id, $key, $single = false) {
if ( $single == false )
return array(get_usermeta($user_id, $key));
else
return get_usermeta($user_id, $key);
}
}

Dieser Code definiert eine neue Funktion get_user_meta für den Fall, dass nicht bereits eine solche existiert. Diese neue Funktion ruft dann die veraltete Funktion get_usermeta auf und liefert das Ergebnis des Funktionsaufrufs zurück, sodass das Plugin wieder wie erwartet funktioniert.

Author: Tobias

Hallo, ich bin Tobias. Meine Leidenschaft gilt alten Autos. Je ausgefallener desto besser. Im Alltag schwöre ich auf meinen treuen '88 Volvo 745 und im Laufe der Zeit sammelten sich daneben in der Garage noch ein '79 AMC Pacer, ein '70 Chrysler 300 Hurst, ein '90 Toyota Sera und ein '94 Mazda 121 Ginza. Wenn ich gerade nicht an den Autos herumschraube, lasse ich den Nerd raushängen und schreibe hier irgendwas zu Online- und IT-Themen, Filmen oder Musik. Ihr findet mich auch .

2 Comments

  1. schön und gut … hab auch schon 1000 Mal irgendwelche Hacks programmieren müssen, aber das update auf WP3 dauert max. 5 Minuten und beinhaltet recht viele Verbesserungen und Sicherheitsupdates. Meinste nicht, das wäre einfacher gewesen? 😉

  2. Mag sein, dass du Recht hast. Allerdings wollte ich das Update auf WordPress 3.0 auch zum Anlass nehmen, mir das MultiSite-Feature mal genauer anzuschauen und eventuell meine selbstgestrickte Lösung abzulösen, denn derzeit laufen hier fünf Blogs auf einer einzigen Installation.

Leave a Reply

Required fields are marked *.