注文の多いXOOPS屋 TOP現在のブログ旧スタッフblog アーカイブ
このページは 2007〜2008 年に公開していた「株式会社RYUS スタッフblog」のアーカイブです。内容は当時のものです。

FCKeditor on XOOPS を試してみました。

2007/09/26 19:56   Ryuji   カテゴリ: XOOPS Cube

当社の兎本が、d3blogとFCKeditor on XOOPSをいじっていたので、私もちょっとだけFCKeditor on XOOPSを試してみました。

・FCKeditor on XOOPS

FCKeditor on XOOPSは、FCKeditorを元にGIJOEさんが、XOOPS用に手を入れられたものです。
XOOPSへの組み込みは、いとも簡単にでき、picoで動作することをまず確認しました。

さて、ここからが実験。
自作したモジュールでFCKeditor on XOOPSが動作するのか?

実験には、つくりかけで放置してあった適当なモジュール(cubsonで作成)を使いました(^^;

まずpicoのソースを参考にして、編集アクションを下記のように修正。

	function executeViewInput(&$render)
{
$render->setTemplateName("rblog_story_edit.html");
$render->setAttribute('actionForm', $this->mActionForm);
$render->setAttribute('object', $this->mObject);

$fck_name = 'story_body';
$fck_value = $this->mActionForm->get('story_body');
$pico_wysiwyg_header = '


' ;
$pico_wysiwyg_body = '<textarea id="'.$fck_name.'" name="'.$pico_wysiwygs['name'].'">'.htmlspecialchars($fck_value,ENT_QUOTES).'</textarea>' ;

$render->setAttribute('wysiwyg', $pico_wysiwyg_body);
$render->setAttribute('xoops_module_header', $pico_wysiwyg_header);
}/PRE

テンプレートは、xoops_dhtmltareaプラグインを使う代わりに

	<{$wysiwyg}>

と記述するだけ。

たったこれだけで、テキスト入力エリアをFCKeditorに変更することができました。

ただ、ちょっとデフォルトでは、表示されるボタンが多すぎて混乱しそうです。
\"\"
表示ボタンの設定は、/common/fckeditor/fckconfig.jsで設定できるようなので、ここで不要なボタンは非表示にしてしまえば良さそうです。
fckconfig.jsに下記のようなコードがあるので、いらないものはここから除外するだけでOKのようです。

FCKConfig.ToolbarSets["Default"] = [
['Source','DocProps','-','Save','NewPage','Preview','-','Templates'],
['Cut','Copy','Paste','PasteText','PasteWord','-','Print','SpellCheck'],
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'],
'/',
['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],
['OrderedList','UnorderedList','-','Outdent','Indent'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
['Link','Unlink','Anchor'],
['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak','UniversalKey'],
'/',
['Style','FontFormat','FontName','FontSize'],
['TextColor','BGColor'],
['FitWindow','-','About']
] ;/PRE

これが試しにボタンを減らしてみた状態。
\"\"

と、いうわけで自作モジュールに組み込んだり、既存モジュールの編集画面を置き換えたりするのは、おどろくほど簡単にできそうなことがわかりました。

あとは、どこで使うかですね。。。
管理者用のBLOG投稿画面とか、カスタムブロックの編集画面あたりでしょうかねぇ。。

コメント (3)

ヒロ — 2007-11-13 13:52
はじめまして。

この記事をみて何とかカスタムブロックの編集画面で
FCKeditorが利用できないかなと思っています。

色々とソースを見てみましたが、私の知識ではムリでした。

FCKeditorで表示されるボタンのカスタマイズはうまく行き
非常に助かりました。

現状はpicoで記事を書き、それをコピーしてカスタムブロック
に貼り付けている状態です。

できましたら、カスタムブロックでFCKeditorが使える例の
ヒントを頂ければ幸いです。
Ryuji — 2007-11-17 22:43
「FCKeditor on XOOPS をカスタムブロック編集画面に組み込む。」を書きましたので、もしよければご覧くださいね。
ヒロ — 2007-11-19 10:02
記事の方をしっかり読んで実行してみます。

ありがとうございます!