After deciding that Xinha would be the WYSIWYG editor of choice (at least for the time being), I asked Kevin Klawonn, BrightPlanet’s most capable sys admin, to tackle the integration task. Here is his report on his experience; I’m sure later posts will update this matter:
Incorporating Xinha into WordPress has been more than a frustrating experience. I was hoping that because of the appearant widespread use of WordPress and Xinha, the integration would be seamless. At a bare minimum, I was hoping that someone else had achieved and documented exactly what I was trying to accomplish. After looking into how WordPress handles plugins, my goal was to configure Xinha so that it would be similar to the existing plugins. I wanted to be able to drop the Xinha folder into the plugins folder, click the activate button in the admin console, and have Xinha "magically" appear in the editing boxes of WordPress. However, this was not the case.
What I found was that for Xinha to work (sort of), I needed to do just as the instructions said and do some hardwiring into the existing pages of the blog. Once I had the new editor working on one page, I went back to looking into making the integration simpler. After scouring several sites for information and spending quite some time on the task of making the implementation of Xinha simple, I am back to the idea that I just need to make Xinha work. Now that I am back on the track of just getting it to work, I am still confronted with some problems.
In the Newbie Guide for Xinha, it says that the textareas that are to be converted to Xinha editors need to have their names listed in the my_config.js file. The two text areas, the ones on the edit-page-form.php and the edit-form-advanced.php pages, both have the id of "contents". So in the my_config.js file I entered "contents" in the appropriate list. I checked the two pages, and only the editor on the edit-form-advanced.php is using Xinha. Why would one work and not the other?
I read every entry I could on the Xinha website. The only thing that came remotely close to helping was a debunked entry saying to change the:
"window.onload = xinha_init;" line at the bottom of the my_config.js file to read "window.onload = xinha_init();"
Immediately following that entry on the website was another saying to NOT do that because it completely changes the meaning of that line and can have unforeseen consequences. I tried it anyway. Both editors appeared correctly. Unfortunately, if a person refreshed the webpage, the Xinha editors were replaced with the regular text areas. So adding the "()" to that line did not work correctly anyway.
Another problem that I have encountered so far with the Xinha editor is that when I do get it to work on a page, it only appears correctly when I use Firefox v1.0.4. If I use Opera v8.0 Xinha does not appear at all. If I use IE v6 I only get a partial view of Xinha. In my research I have found no one else that has these problems. So, once I finally get Xinha working on all the appropriate pages, I then need to find out why it is not working for certain browsers.
Our objective in this continuing effort is to get Xinha integrated as a true plug-in, allow it to be switched on of off with with existing minimal editor, ensure it works across browsers, and other things we have not yet discovered.
Nonetheless, Kevin has done a great job in areas I can’t even fathom. It is clear that some blog tasks should not be tackled by mere mortals.
Author’s Note: I actually decided to commit to a blog on April 27, 2005, and began recording soon thereafter my steps in doing so. Because of work demands and other delays, the actual site was not released until July 18, 2005. To give my ‘Prepare to Blog …’ postings a more contemporaneous feel, I arbitrarily changed posting dates on this series one month forward, which means some aspects of the actual blog were better developed than some of these earlier posts indicate. However, the sequence and the content remain unchanged. A re-factored complete guide will be posted at the conclusion of the ‘Prepare to Blog …’ series, targeted for release about August 18, 2005. mkb