WordPress 3.1 mit PostgreSQL

Dieser Blog lief die ganze zeit mit WordPress 3.0 und PostgreSQL. Beim Update auf WordPress 3.1 hat das PostgreSQL-Plugin plötzlich nicht mehr funktioniert. In den Apache-Logs bin ich auf folgenden Fehler gestoßen

UPDATE: Inzwischen funktioniert das normale Plugin wieder: Dazu einfach die Anweisungen des Entwicklers auf http://www.hawkix.net/lang/en/2011/08/pg4wp-1-2-0b1-beta-release/ befolgen.

PHP logs shows a PHP Fatal error:  Cannot redeclare class wpdb in /usr/share/wordpress/htdocs/wp-content/db.php(37) : eval()'d code on line 52

Nach einigem Suchen bin ich auf folgende Lösung gestoßen:

  1. WordPress wie gewohnt updaten / installieren (nähere Informationen sind  hier zu finden)
  2. Jetzt sollte es irgendwann zu einem Fehler kommen (install.php bzw upgrade.php konnte nicht ausgeführt werden)
  3. Dann die Datei /wp-includes/load.php mit einem Editor öffnen und die Funktion
function require_wp_db() { global $wpdb; require_once( ABSPATH . WPINC . '/wp-db.php' ); if ( file_exists( WP_CONTENT_DIR . '/db.php' ) ) require_once( WP_CONTENT_DIR . '/db.php' ); if ( isset( $wpdb ) ) return; $wpdb = new wpdb( DB_USER, DB_PASSWORD, DB_NAME, DB_HOST ); }

durch

function require_wp_db() { global $wpdb; if ( file_exists( WP_CONTENT_DIR . '/db.php' ) ) require_once( WP_CONTENT_DIR . '/db.php' ); else require_once( ABSPATH . WPINC . '/wp-db.php' ); if ( isset( $wpdb ) ) return; $wpdb = new wpdb( DB_USER, DB_PASSWORD, DB_NAME, DB_HOST ); }

ersetzen.

Anschließend ganz normal die Installation fortsetzen (install / upgrade).

Quellen:
http://wordpress.org/support/topic/wp-31-pg4wp-cannot-redeclare-class-wpdb
http://blog.beefyapps.com/2010/12/wordpress-postgresql-trouble-php-fatal-error-cannot-redeclare-class-wpdb/

Hinterlasse eine Antwort

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