2013年3月4日、ブログは以下のURLに移行しました。最新の記事はこちらで公開しています。
新しいブログでは、コメントやリンクが一部切れていたり、一部機能が調整中です。
新しいブログへ

Joomla!にCKEditorをインストールしてみた

投稿日:2010.02.21 / カテゴリ:WEB、WEBシステム関連 / 投稿者:Tom Goodsun

English version is below.

Joomla!にCKEditorをインストールしてみました。
いくつか種類があるのですが、私は公式で配布されている以下のやつをインストール。
http://extensions.joomla.org/extensions/edition/editors/9897

ファイルブラウザであるCKFinderが使えるのはいいのですが、少々不具合っぽいものがあるので、その対処方法も含めてのインストール手順です。

といっても、Joomla!の基本的なインストール。私はZIPでダウンロードして、管理画面上でExtensions>Install/Uninstallの画面でUpload Package Fileで落としたZIPをアップロードしてインストールしてます。
そして、Site>Global Configurationの画面で、Default WYSIWYG Editorを「Editor - CKEditor」に設定です。
で、ひとまず気になっているファイルブラウザが動くかを確認・・・。

動かない!

「The file browser is disabled for security reasons. Please contact your system administrator and check the CKFinder configuration file.」


というエラーが表示されました。
これはCKFinderが内部のエラーコードで500になったときに出力されるエラーです。
で、デバッグ開始。
コード自体は問題ないのですが、突き詰めていくと、ログイン状態を管理しているセッションコードを保持しているDBテーブルへの参照に問題があることが判明。
私はインストール時にDBプレフィックス(接頭辞)を変更しているので、このようなエラーが発生していたようです。

で、修正すべきポイントは/plugins/editors/ckfinder/config.phpの32行目。ちょうどSQLの記述がありますが、FROM句に「jos_」のプレフィックス。
デフォルトでインストールすればこれになりますが、これではプレフィックス変えてる人には使えません。
「jos_」を「#__」に変更すると正常に動きます。
SQLの後にsetQueryしているので、このときにプレフィックスが付与されます。

あとはExtensions>Plugin Manager>Editor - CKEditorでLanguage Nameを「Japanese」、Colorを見慣れている「#CCCCCC」(念のためもともとの値は「#6B6868」)、Shift Enter Modeがなぜか「P Elements」になっているので「BR Elements」に設定しました。

ただJCEみたいに記事閲覧マネージャ的なものがほしいところです。
あれはあれで結構便利なので、だれか付けてくれないでしょうか!


Joomla! extension 'CKEditor 2.0 for Joomla!' has a bug. The file browser does not work on my Joomla!(Ver.1.5)

When I use the file browser of CKEditor (CKFinder), it warns you with message like 'The file browser is disabled for security reasons. Please contact your system administrator and check the CKFinder configuration file.'
This means CKFinder's internal error code '500' is returned.

So I checked this scripts and found resolution. You can modify this easily.
You can find this bug in /plugins/editors/ckfinder/config.php on line 32, running SQL to check the login authentication.
FROM statement has 'jos_' prefix. This prefix is given to name of database tables in default setting installation.
But I changed this prefix. So this statement must be changed from 'FROM jos_session' to 'FROM #__session', the sign '#__' is replaced in funtion setQuery and run.
You can use the file browser of CKEditor for Joomla! correctly.

コメント

まだコメントはありません。
このアイテムは閲覧専用です。コメントの投稿、投票はできません。