Thinkphp エディタ拡張クラス kindeditor の使い方
1. 使用前の準備。
使用する前に、Thinkphp サイト プロジェクトが作成されていることを確認してください。
1、Keditor.class.php、JSON.class.php はエディタ拡張クラス ファイルであり、サイト プロジェクトの ThinkPHPLibORGNet ディレクトリにコピーします。
2、editor ディレクトリは、kindeditor のコアパッケージです。これをプロジェクトの Public ディレクトリ (エントリ ファイル Public と同じレベルにあるディレクトリ) 、 を作成し、Public の下に別の Upload ディレクトリを作成します。エディターを使用してアップロードされた画像を保存するために使用されます。
3、KeditorAction.class.php はエディターの画像アップロード機能とリモート画像閲覧機能です。これをプロジェクトの libAction ディレクトリにコピーします。 。
2. オブジェクトの呼び出し
コントローラー メソッドでオブジェクトを呼び出します:
import("ORG.Net.Keditor");$ke=new Keditor();$ke->id="content";//指定textarea的id$keshow=$ke->show();//生成js代码$this->assign("keshow",$keshow);$this->display();
<html><head>{$keshow}</head><!--输出js。建议放在head--><body><form id="form1" name="form1" method="post" action=""><textarea name="content" id="content" cols="70" rows="20"><!-文本域。id为content--></textarea><input name="img" id="img" type="hidden" value="" /><!--隐藏域存储编辑器上传的图片地址,id为img--></form></body></html>
3. オブジェクトの属性
属性を 2 つのタイプに分けます。 1 つは kindeditor の組み込み属性であり、もう 1 つは拡張された新しい属性です。 kindeditor を使用したことがある場合、kindeditor 自体に id、items、width、height、afterCreate Wait があることがわかるはずです。 30 属性の場合。これらの属性は、php を使用して直接定義できるようになりました。たとえば、id: $ke-> を定義します。 ;id =”content”,幅の定義: $ke->width=”700px”; 最初にオブジェクトの新しい属性について説明します。 。
オブジェクトの新しい属性:
1。 jspath: kindeditor のコア js ファイルを定義します。デフォルト値は /Public/editor/kindeditor.js です。editor ディレクトリは Publibこの属性を指定する必要があります、など$ke->jspath=”/kind/ kindeditor.js” ;2
、form: は、送信されたフォームの id を指定します ( から) ) 。デフォルトは form1 です。この属性は、ctrl+enter 送信関数と組み合わせて使用されます。たとえば、エディタが id is "formid" という形式で配置されている場合、ctrl+entersubmit フォーム 形式。 $ke->form=”formid” を定義する必要があります。
送信関数では、他の属性も設定する必要があります。後で説明します。
3。
imgid: 画像アドレスを格納する隠しフィールド id を指定します。デフォルト値は img です。
編集者が写真をアップロードするたびに。画像アドレスはこの隠しフィールドに保存されます。データベースにデータを追加するとき、この非表示フィールドのデータもデータベース フィールドに保存できます。データを削除するとき。まず、データベースに保存されている画像アドレスを読み取り、削除します。削除プロセスでは、オブジェクトの delimg メソッドを呼び出すだけで済みます。この方法については後で詳しく説明します。このようにして、コンテンツの削除と画像の削除を同時に行うという目的が達成されます。
属性が付属しています:
1、items:
$ke->items="['source', '|', ' として定義されたエディターのツールバーを構成します。 fullscreen', 'undo', 'redo', 'print', 'cut', 'copy', 'paste']";
little キーワードを追加しました。編集者合理化されたモデルを迅速に定義します。使用法$ke->items=”little”;
2, afterCreate: エディターの作成後に実行されるコールバック関数を設定します。は次のとおりです:
$ke->afterCreate="function(id){
alert('successly created'+id)
}";
ctrlenter キーワード、ctrl+enter を簡単に定義してフォームを送信できます。使用法: $ke->afterCreate="ctrlenter";
$ke->form=
”formname” と同時に を定義する必要があります。formname をフォーム id に置き換えます エディターが配置されている場所。 3
。 resizeMode: 2 または 1 または 0、2 ドラッグして幅と高さを変更する機能。 1 は高さのみを変更できます。 0はドラッグできません。定義方法は次のとおりです: $ke->resizeMode=1; $ke->resizeMode=”1”;この定義は間違っています。 4、
allowFileManager: true または false、true の場合に表示されます。サーバー画像の閲覧機能 (この機能を表示するには、画像のアップロード ボタンをクリックします)。 $ke->allowFileManager=ture; などのメソッドを定義します。属性値がブール値の場合は引用符で囲まないでください。
5
、
imageUploadJson は、画像をアップロードするためのサーバー側プログラムを指定します。デフォルト値は /index.php/Keditor/upload6 です。
fileManagerJson: リモート画像を参照するためのサーバー側プログラムを指定します。 デフォルト値は /index.php/Keditor/filemanager です。
注: KeditorAction.class .php
が画像のアップロードとリモート画像の参照に使用される前にコピーされます。ファイル内の upload メソッドは画像をアップロードするプロセスを定義し、ファイル内の filemanager メソッドは画像を参照するプロセスを定義します。これら 2 つのメソッドに対する権限を推測するコードを追加して、管理者のみが画像をアップロードまたは参照できるようにすることができます。デフォルトの KeditorAction.class.php を使用せずに、アップロード処理プロセスと画像閲覧プロセスをカスタマイズすることもできます。次に、imageUploadJson 属性値と fileManagerJson 属性値を再度定義する必要があります。カスタム処理の詳細については後述する。 他にも組み込み属性があります。それらすべてをリストするつもりはありません。大家能够查看kindeditor官方文档
http://www.kindsoft.net/doc.php?cmd=config
注意。数字类型或布尔类型的属性值,不要放在引號内。其它属性值放在引號中,属性值的格式和kindeditor自身格式一样。
四 对象的方法。
1。upload。上传图片。
此方法在编辑器上传图片处理过程中使用,用法:
import("ORG.Net.Keditor");Keditor::upload('./Public/Upload/','/Public/Upload/',array('gif','jpg','jpeg','png','bmp'),1000000);
import("ORG.Net.Keditor");Keditor::filemanager("./Public/Upload/","/Public/Upload/",array('gif','jpg','jpeg', 'png', 'bmp'));
import("ORG.Net.Keditor");Keditor::delimg($imgfield);//$imgfield 通常是你数据库存放图片地址的字段。<p></p>
如:
import("ORG.Net.Keditor");$ke=new Keditor();$ke->show(“{id : ”content”,width: ‘700px’;height : ”300px”;imgid : ”img”}”);