Extension:FCKeditor (Official)

Intro
This extension enables a more intuitive WYSIWYG editor when editing pages on a MediaWiki-based site. It uses a special version of the FCKeditor WYSIWYG editor that outputs wiki text rather than the usual HTML that caused problems for MediaWiki integrations in the past. See the following link for a working example of this extension in action: http://mediawiki.fckeditor.net/index.php/Main_Page.

It is being jointly developed by the FCKeditor authors and Wikia.

Download and extract necessary files
First of all, you need to install FCKeditor as MediaWiki extension:

Download FCKeditor extension, unpack it and place in the extensions drectory.

Your directory structure should look similar to the following one: |- ..  |- ...   |- FCKeditor |- editor |- css |- ...        |- _source |- _document~ion.html |- ...      |- license.txt Please note that inside FCKeditor directory there is another editor directory. FCKeditor holds the whole extension, whilst editor inside holds the rich text editor itself. If you decide some day to upgrade the editor (not the whole MediaWiki extension), remember to extract it into that editor subdirectory.
 * - docs
 * - extensions

Modify configuration file
After you have put the FCKeditor extension in the correct directory, add this line at the end of LocalSettings.php:

EditPageBeforeEditConflict
In the latest MediaWiki (1.13, SVN version), new hook EditPageBeforeEditConflict is already available. This hook is required to fix WikiText/HTML problems when conflict occurs.

MediaWiki 1.10 - 1.12 users have to add this hook manually.

In includes/EditPage.php, at the end of showEditForm function, find this code: and replace with:

SanitizerAfterFixTagAttributes
In the latest MediaWiki (1.13, SVN version), new hook SanitizerAfterFixTagAttributes is already available. This hook is required to keep templates defining tag attributes.

MediaWiki 1.10 - 1.12 users have to add this hook manually.

In includes/Sanitizer.php, at the end of fixTagAttributes function, find this code: and replace it with:

More information
For more information please refer to the official site of the project