Wer wie ich das WordPress-Plugin Enable Media Replace einsetzt, um bereits in die Mediathek hochgeladene Anhänge zu ersetzen, wird nach der Installation von WordPress 3.5 bemerkt haben, dass genau dies nicht mehr funktioniert.
Enable Media Replace mit Fehler
Ein direkter Fehler wird nicht ausgegeben, es ist nur einfach keine Button mehr vorhanden, um das gewünschte Datei in der WordPress-Mediathek zu ersetzen. Durch einige Änderungen an der Mediathek in WordPress 3.5, war es fast klar, dass das Plugin nicht mehr funktionieren wird. Leider hat Måns Jonasson, der Autor des Plugins, auch bisher keinen Patch veröffentlicht.
Lösung im WordPress-Forum gefunden
Im offiziellen WordPress Support Forum habe ich eine Lösung gefunden, die das WordPress-Plugin Enable Media Replace wieder ans Laufen bringt. Da hat Elizabeth Powell einen Workaround vorgestellt, der bis zur Aktualisierung des Plugins durch den Autor helfen sollte.
Öffnet die enable-media-replace.php im Plugin-Ordner und ersetzt die Funktion enable_media_replace von Zeile 55 bis Zeile 70 durch diesen Code. Nachdem ihr die geänderte Datei wieder auf euren Server geladen habt, erscheint unterhalb des Textfeldes Beschreibung wieder der bekannte Button, um Anhänge in der WordPress-Mediathek zu ersetzen.
function enable_media_replace( $form_fields, $post ) {
$current_screen = get_current_screen();
if ( $current_screen->base == 'post' && $current_screen->post_type == 'attachment' ) {
$url = admin_url( "upload.php?page=enable-media-replace/enable-media-replace.php&action=media_replace&attachment_id=" . $post->ID);
$action = "media_replace";
$editurl = wp_nonce_url( $url, $action );
if (FORCE_SSL_ADMIN) {
$editurl = str_replace("http:", "https:", $editurl);
}
$link = "href="$editurl"";
$form_fields["enable-media-replace"] = array("label" => __("Replace media", "enable-media-replace"), "input" => "html", "html" => "<p><a class='button-secondary'$link>" . __("Upload a new file", "enable-media-replace") . "</a></p>", "helps" => __("To replace the current file, click the link and upload a replacement.", "enable-media-replace"));
}
return $form_fields;
}
