Du willst ein Plugin für WordPress schreiben und die Abwärtskompatibilität erhalten, dann prüfe im Vorfeld die Konstanten, denn seit Version 2.6 von WordPress kann man den Ordner wp-content
umbenennen und damit kann auch das Plugin-Verzeichnis nicht ohne weiteres abgefragt werden.
Einige Zeilen Code genügen und du kannst mit den „neuen“ Konstanten arbeiten.
// Pre-2.6 compatibility
if ( !defined( 'WP_CONTENT_URL' ) )
define( 'WP_CONTENT_URL', get_option( 'siteurl' ) . '/wp-content' );
if ( !defined( 'WP_CONTENT_DIR' ) )
define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' );
if ( !defined( 'WP_PLUGIN_URL' ) )
define( 'WP_PLUGIN_URL', WP_CONTENT_URL. '/plugins' );
if ( !defined( 'WP_PLUGIN_DIR' ) )
define( 'WP_PLUGIN_DIR', WP_CONTENT_DIR . '/plugins' );
if ( !defined( 'WP_LANG_DIR') )
define( 'WP_LANG_DIR', WP_CONTENT_DIR . '/languages' );
Die Lösung nutze ich schon geraume Zeit, ebenso andere Entwickler im deutschsprachigen Raum. In der Diskussion der WordPress-Mailingliste hat sich dies scheinbar als nicht bekannt erwiesen, denn immer kommen Fragen dazu hoch, daher wurde die Lösung nun auch im Codex von WordPress aufgenommen – „Determining Plugin and Content Directories“.