The SymptomsThere are quite a few things that can cause the WordPress WYSIWYG editor to break. Using GoDaddy's free hosting service is certainly one of them. A couple ways that you can tell you're experiencing the "GoDaddy" problem:
1. On the "Write Post" page, the post toolbar looks like this:
Instead of this:
2. After browsing to the "Write Post" page in Firefox, open the error console by going to Tools > Error Console. This will is displayed:
3. Clicking the "HTML" button does nothing.
The FixCorrecting this error involves a slight edit to one of the core WordPress PHP files, namely "script-loader.php". Please do so at your own risk. This fix has been tested on WordPress 2.6.3 with IE7 and Firefox 3.
Fire up your FTP client and FTP into the website you've got hosted on GoDaddy's server. I used FireFTP in this example. From here on, we'll assume that WordPress is installed in the "/blog" directory.
Look for a file named like this:
tinymce_(a bunch of numbers and letters).gz
tinymce_(a bunch of numbers and letters)
Upload tinymce_fixed.js to the "/blog/wp-content/uploads/js_cache" directory on the GoDaddy server.
Note: If the file "tinymce_(a bunch of numbers and letters).gz" doesn't exist on the GoDaddy server, but a file named "tinymce_(a bunch of numbers and letters).js" does, then rename the .js file to "tinymce_fixed.js" without the quotes. No downloading or extracting is required.
If the js_cache directory doesn't exist, then either WordPress doesn't have write permission to the wp-content folder, or you haven't opened the "Write Post" page yet.
In your FTP client, download the file "/blog/wp-includes/script-loader.php".
Open script-loader.php in your favorite editor, and comment out line 41. Beneath that, insert the following new line of code:
$scripts->add( 'tiny_mce', '/wp-content/uploads/js_cache/tinymce_fixed.js', array('editor_functions'), $mce_version );
The code should now look like this:
//$scripts->add( 'tiny_mce', '/wp-includes/js/tinymce/tiny_mce_config.php', array('editor_functions'), $mce_version ); $scripts->add( 'tiny_mce', '/wp-content/uploads/js_cache/tinymce_fixed.js', array('editor_functions'), $mce_version );
Upload and replace the script-loader.php file on the GoDaddy server. You should then be good to go. Also, make sure the "Use the visual editor when writing" option is enabled on your WordPress profile page.
Please be aware that if you upgrade WordPress, you'll have to repeat this process to get the visual editor working again. Same thing if you re-configure TinyMCE's settings in any way.