WordPress: tinyMCE is not defined

Wenn der WYSIWYG-Editor in WordPress trotz der nötigen Einstellungen in der Administration einfach nicht angzeigt wird, kann das auch am Webserver liegen. Das musste ich heute morgen bei einem Blogprojekt, welches ich technisch betreue, staunend zur Kenntnis nehmen. Offensichtlich gibt es nämlich Schwierigkeiten mit dem Editor, wenn auf dem Webserver kein gzip installiert ist, was sich in JavaScript-Fehlern wie

tinyMCE is not defined

äussert.

Ein kleiner Hack in der Datei ‚tiny_mce_gzip.php‘ im Ordner ‚/wp-includes/js/tinymce/‘ sorgte dann aber für Abhilfe. Dazu müssen in der genannten Datei die folgenden Zeilen (Zeile 132 – 142 in WordPress 2.1.1) auskommentiert oder gelöscht werden (Backup nicht vergessen!):

$enc = in_array('x-gzip', $encodings) ? "x-gzip" : "gzip";

// Use cached file if it exists but not in debug mode
if (file_exists($cacheFile) && !$debug) {
header("Content-Encoding: " . $enc);
echo file_get_contents($cacheFile);
die;
}

if (!$diskCache)
ob_start("ob_gzhandler");

Wer es einfacher haben will, kopiert einfach die aktualisierte Datei tiny_mce_gzip.php vom WordPress Bug-Tracking Server, wo das Problem bereits bekannt ist.

Nach einem Leeren des Browser-Caches funktionierte der Editor dann (endlich) wie gewohnt.

5 Comments

  1. Daniel Bräutigam 28.02.2007
  2. Simon 8.03.2007
  3. Schaelle 25.03.2007
  4. Axel Perschmann 6.07.2008
  5. BloggingTom 7.07.2008