네이버 스마트에디터 적용하기 정보
네이버 스마트에디터 적용하기본문
네이버의 스마트에디터를 그누 스킨에 적용하는 방법이 없어서 올려봅니다.
1. 네이버 스마트 에디터를 다운받는다.
http://dev.naver.com/projects/smarteditor/download
2. 다운받은 에디터 압축해제 후 그누보드 루트에 업로드한다.

3. http://dev.naver.com/projects/jindo/download에서 jindo.min.js를 다운로드 받아 /js 폴더에 복사한다.
(압축 푼 폴더-SmartEditor-에 보시면 설치 가이드 html이 있습니다.)
4. 적용하고자 하는 스킨의 write.skin.php 파일의 소스코드를 메모장이나 에디트플러스 등의 프로그램으로 오픈 한다.
5. 최상단에 아래 코드를 넣어 스마트에디터 사용 준비를 한다.
<? // Naver SmartEditor 삽입
if ($is_dhtml_editor) {
echo "<script type=\"text/javascript\" src=\"{$g4[path]}/SmartEditor/js/HuskyEZCreator.js\" charset=\"utf-8\"></script>";
}
?>
6. 적용할 textarea에 아래 코드로 교체한다.
<textarea name="wr_content" id="ir1" style="width:100%; height:80px" <? if ($write_min || $write_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?> itemname="내용" required><?=$content?></textarea>
<? if ($write_min || $write_max) { ?><script language="javascript"> check_byte('wr_content', 'char_count'); </script><?}?>
(그누의 내용 즉 wr_content부분에 삽입하는 것을 예로 들었습니다. 볼드 부분의 입력부분만 주의를 기울이시고, 여러개 삽입시 삽입하고자 하는 곳에 위 코드를 그대로 복사하고, id, name만 맞춰주시면 됩니다.)
7. 제일 마지막에 에디터를 생성하고, 에디터에 입력된 내용을 textarea로 전송하는 스크립트를 삽입합니다.
<script language="JavaScript">
<!--
var oEditors = [];
nhn.husky.EZCreator.createInIFrame(oEditors, "ir1", "<?=$g4[path]?>/SmartEditor/SEditorSkin.html", "createSEditorInIFrame");
function _onSubmit(elClicked){
// 에디터의 내용을 에디터 생성시에 사용했던 textarea에 넣어 줍니다.
oEditors.getById["ir1"].exec("UPDATE_IR_FIELD", []);
// 에디터의 내용에 대한 값 검증은 이곳에서 document.getElementById("ir1").value를 이용해서 처리하면 됩니다.
1. 네이버 스마트 에디터를 다운받는다.
http://dev.naver.com/projects/smarteditor/download
2. 다운받은 에디터 압축해제 후 그누보드 루트에 업로드한다.

3. http://dev.naver.com/projects/jindo/download에서 jindo.min.js를 다운로드 받아 /js 폴더에 복사한다.
(압축 푼 폴더-SmartEditor-에 보시면 설치 가이드 html이 있습니다.)
4. 적용하고자 하는 스킨의 write.skin.php 파일의 소스코드를 메모장이나 에디트플러스 등의 프로그램으로 오픈 한다.
5. 최상단에 아래 코드를 넣어 스마트에디터 사용 준비를 한다.
<? // Naver SmartEditor 삽입
if ($is_dhtml_editor) {
echo "<script type=\"text/javascript\" src=\"{$g4[path]}/SmartEditor/js/HuskyEZCreator.js\" charset=\"utf-8\"></script>";
}
?>
6. 적용할 textarea에 아래 코드로 교체한다.
<textarea name="wr_content" id="ir1" style="width:100%; height:80px" <? if ($write_min || $write_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?> itemname="내용" required><?=$content?></textarea>
<? if ($write_min || $write_max) { ?><script language="javascript"> check_byte('wr_content', 'char_count'); </script><?}?>
(그누의 내용 즉 wr_content부분에 삽입하는 것을 예로 들었습니다. 볼드 부분의 입력부분만 주의를 기울이시고, 여러개 삽입시 삽입하고자 하는 곳에 위 코드를 그대로 복사하고, id, name만 맞춰주시면 됩니다.)
7. 제일 마지막에 에디터를 생성하고, 에디터에 입력된 내용을 textarea로 전송하는 스크립트를 삽입합니다.
<script language="JavaScript">
<!--
var oEditors = [];
nhn.husky.EZCreator.createInIFrame(oEditors, "ir1", "<?=$g4[path]?>/SmartEditor/SEditorSkin.html", "createSEditorInIFrame");
function _onSubmit(elClicked){
// 에디터의 내용을 에디터 생성시에 사용했던 textarea에 넣어 줍니다.
oEditors.getById["ir1"].exec("UPDATE_IR_FIELD", []);
// 에디터의 내용에 대한 값 검증은 이곳에서 document.getElementById("ir1").value를 이용해서 처리하면 됩니다.
try{
elClicked.form.submit();
}catch(e){}
}
//-->
</script>
여러개를 삽입한 경우 해당 코드를 복사하여 넣어 주시면 됩니다.;
예를 들어 id가 ir1, name이 wr_content인 기존 에디터에 id가 wr_1, name이 wr_1인 에디터가 추가될 경우 위 코드에서 생성부분과 전달 부분에 코드를 하나더 추가하면 됩니다.
<script language="JavaScript">
<!--
var oEditors = [];
nhn.husky.EZCreator.createInIFrame(oEditors, "ir1", "<?=$g4[path]?>/SmartEditor/SEditorSkin.html", "createSEditorInIFrame");
nhn.husky.EZCreator.createInIFrame(oEditors, "wr_4", "<?=$g4[path]?>/SmartEditor/SEditorSkin.html", "createSEditorInIFrame"); --> 추가
function _onSubmit(elClicked){
// 에디터의 내용을 에디터 생성시에 사용했던 textarea에 넣어 줍니다.
oEditors.getById["ir1"].exec("UPDATE_IR_FIELD", []);
oEditors.getById["wr_4"].exec("UPDATE_IR_FIELD", []); --> 추가
// 에디터의 내용에 대한 값 검증은 이곳에서 document.getElementById("ir1").value를 이용해서 처리하면 됩니다.
elClicked.form.submit();
}catch(e){}
}
//-->
</script>
여러개를 삽입한 경우 해당 코드를 복사하여 넣어 주시면 됩니다.;
예를 들어 id가 ir1, name이 wr_content인 기존 에디터에 id가 wr_1, name이 wr_1인 에디터가 추가될 경우 위 코드에서 생성부분과 전달 부분에 코드를 하나더 추가하면 됩니다.
<script language="JavaScript">
<!--
var oEditors = [];
nhn.husky.EZCreator.createInIFrame(oEditors, "ir1", "<?=$g4[path]?>/SmartEditor/SEditorSkin.html", "createSEditorInIFrame");
nhn.husky.EZCreator.createInIFrame(oEditors, "wr_4", "<?=$g4[path]?>/SmartEditor/SEditorSkin.html", "createSEditorInIFrame"); --> 추가
function _onSubmit(elClicked){
// 에디터의 내용을 에디터 생성시에 사용했던 textarea에 넣어 줍니다.
oEditors.getById["ir1"].exec("UPDATE_IR_FIELD", []);
oEditors.getById["wr_4"].exec("UPDATE_IR_FIELD", []); --> 추가
// 에디터의 내용에 대한 값 검증은 이곳에서 document.getElementById("ir1").value를 이용해서 처리하면 됩니다.
try{
elClicked.form.submit();
}catch(e){}
}
//-->
</script>
차~암~ 쉽죠잉~~~~
참고로 cheditor가 있는 경우 모두 제거해 주셔야 글쓰기시 '글쓰기에는 $wr_id 값을 사용하지 않습니다' 라는 삽질형 오류가 나지 않습니다..
삽입된 경우 최상단 아래 코드 제거
if ($is_dhtml_editor) {
include_once("$g4[path]/lib/cheditor4.lib.php");
echo "<script src='$g4[cheditor4_path]/cheditor.js'></script>";
echo cheditor1('wr_content', '100%', '250');
}
하단 스크립투군에 아래 코드 제거
if ($is_dhtml_editor) echo cheditor3('wr_content');
많이 사용하시길 바래요~~~
elClicked.form.submit();
}catch(e){}
}
//-->
</script>
차~암~ 쉽죠잉~~~~
참고로 cheditor가 있는 경우 모두 제거해 주셔야 글쓰기시 '글쓰기에는 $wr_id 값을 사용하지 않습니다' 라는 삽질형 오류가 나지 않습니다..
삽입된 경우 최상단 아래 코드 제거
if ($is_dhtml_editor) {
include_once("$g4[path]/lib/cheditor4.lib.php");
echo "<script src='$g4[cheditor4_path]/cheditor.js'></script>";
echo cheditor1('wr_content', '100%', '250');
}
하단 스크립투군에 아래 코드 제거
if ($is_dhtml_editor) echo cheditor3('wr_content');
많이 사용하시길 바래요~~~

많은 분들이 댓글 질문을 하셨는데, 자주 들어오지 않는 관계로 답변을 못해드린게 많았네요..
간혹 들어오는대로 답변을 달거나 이해가 잘 가시도록 본문을 수정하겠습니다.
추천
13
13
댓글 36개
적용해 보니까 진짜 좋네요~~
좋은 팁 감사합니다..
좋은 팁 감사합니다..

님 좀 짱인듯 +_+
혹시 스마트 에디터로 네이버 도서검색등(API) 적용해 보신거 잇나요? 방법좀 알려주시면 감사
^^ 아직 없습니다~
다른 플젝중이라 시간이 없네요~
앞으로 API 적용한게 안올라오면 함 도전해 보겠습니다.
다른 플젝중이라 시간이 없네요~
앞으로 API 적용한게 안올라오면 함 도전해 보겠습니다.
깔끔하고 좋은데요 ~~ ^^ 이미지 삽입 플레쉬 삽입 이런건 없는건가요???
우선 추천합니다~
우선 추천합니다~
이미지 삽입과 플래시 삽입은 어떤 것을 말씀하시는지????
웹에 플래시와 이미지 있으면 그대로 복사하여 에디터에 붙여 넣으시면 되고요~
쓰기페이지에서는 파일 업로드 기능을 이용하고, 뷰페이지에서 보여주면 되지 않을까요???
추천해 주신분들 감사합니다 ^^
웹에 플래시와 이미지 있으면 그대로 복사하여 에디터에 붙여 넣으시면 되고요~
쓰기페이지에서는 파일 업로드 기능을 이용하고, 뷰페이지에서 보여주면 되지 않을까요???
추천해 주신분들 감사합니다 ^^
감사합니다~
이거 utf-8 버전인가요?
위의 글을 보니 그런것 같은데... Eur-kr 버전에는 적용이 불가능 한지?
위의 글을 보니 그런것 같은데... Eur-kr 버전에는 적용이 불가능 한지?
적용해볼께요. 감사^^
이거 id가 ir1이면 안되는 건가요?
이거 해봤는데 내용이 출력이 안되요 ㅠ.ㅠ
어디가 잘못된거지 ㅠ.ㅠ
이거 해봤는데 내용이 출력이 안되요 ㅠ.ㅠ
어디가 잘못된거지 ㅠ.ㅠ

감사합니당..^^"
.
감사합니다.
왜 내용 : 필수입니다 라는 멘트가 뜰까요 ;;

스마트 적용

유용하게 잘 쓰겠습니다^^!
보드 페이지가 기본이 아닌 페이지에 Text 입력 박스에 에디터를 적용하려면 어쩌하여야 하나요?
예를 들면 영카트의 사용후기 입력 부분에 스마트에디터를 적용하려면 어찌하여야 하나용??
예를 들면 영카트의 사용후기 입력 부분에 스마트에디터를 적용하려면 어찌하여야 하나용??
왜 적용이 안되나 저도 한참 고민하다
<input type=image id="btn_submit" src="<?=$board_skin_path?>/img/btn_write.gif" border=0 accesskey='s' onclick="_onSubmit(this)" >
설명중 이 함수 호출이 빠진걸 알았습니다.
onclick="_onSubmit(this)"
이거 넣으니 잘됩니다.
<input type=image id="btn_submit" src="<?=$board_skin_path?>/img/btn_write.gif" border=0 accesskey='s' onclick="_onSubmit(this)" >
설명중 이 함수 호출이 빠진걸 알았습니다.
onclick="_onSubmit(this)"
이거 넣으니 잘됩니다.
최고!
해봐야 겠습니다. ^^*
6번이 무슨뜻인지 잘 모르겠어요ㅠㅠㅠㅠㅠㅠㅠㅠ
'적용할 textarea'라는게 무슨뜻이죠?
제가 적용하고 싶은 스킨에는 textarea 태그가 없는데요ㅠㅠㅠㅠㅠ
'적용할 textarea'라는게 무슨뜻이죠?
제가 적용하고 싶은 스킨에는 textarea 태그가 없는데요ㅠㅠㅠㅠㅠ
한참 늦었지만 나중에 오시는 분들 위하여..
적용할 textarea란 기존 write.skin.php 페이지 안에 기존 ch에디터나 입력란으로 사용된 textarea 태그를 말하는 것 입니다. 해당 태그를 위 코드로 교체하라는 얘기 입니다.
적용하시고자 하는 스킨에 textarea 태그가 없지는 않을 것이니 다시 확인해 보시면 됩니다.
적용할 textarea란 기존 write.skin.php 페이지 안에 기존 ch에디터나 입력란으로 사용된 textarea 태그를 말하는 것 입니다. 해당 태그를 위 코드로 교체하라는 얘기 입니다.
적용하시고자 하는 스킨에 textarea 태그가 없지는 않을 것이니 다시 확인해 보시면 됩니다.

고맙습니다. 아주 잘됩니다 ^^
저는 저 위에대로 다 한거 같은데... 적용이 안됩니다...
왜 그럴까요... 뭐가 문제일까요?
왜 그럴까요... 뭐가 문제일까요?
오랜만에 들어오네요.. 제가 글 올려 놓고 자주 들여다 보질 못하니 허접 소스 올려놓고 A/S 못해 드리는 접 양해를 바랍니다.
만약 적용이 안된다면 어떤 식으로든 에러 메시지를 보셨을 것 같은데요...
어떤 에러인줄 알아야 알려드릴 수 있을 것 같습니다.
만약 적용이 안된다면 어떤 식으로든 에러 메시지를 보셨을 것 같은데요...
어떤 에러인줄 알아야 알려드릴 수 있을 것 같습니다.
cheditor 관련 내용이 없음에도 불구하고
글쓰기시 '글쓰기에는 $wr_id 값을 사용하지 않습니다' 라는 삽질형 오류가 납니다
왜그럴까요?
글쓰기시 '글쓰기에는 $wr_id 값을 사용하지 않습니다' 라는 삽질형 오류가 납니다
왜그럴까요?

네이버 스마트에디터 적용하기
아직 적용전이지만 감사합니다..^^
하는거 따라하면 Parse error: syntax error, unexpected $end in /www/info/public_html/info/skin/board/info/write.skin.php on line 411 이리 발생하는데 도대체 뭐지 모르겠어요.

,,
xe 에디터 임시저장 기능이랑 파일첨부 아작스로 여러개 등록하는 기능 그누보드로 안될까요 흑흑
저도 초보라...
말씀하신대로 임시저장은 ajax로 시간이든 카운트 등 조건줘서 db로 날리면 될거 같은데, 죄송하지만 위 코드 외 이상으로 개발할 예정이 없습니다.
실력도 안되지만 다른 작업들이 많은지라...
말씀하신대로 임시저장은 ajax로 시간이든 카운트 등 조건줘서 db로 날리면 될거 같은데, 죄송하지만 위 코드 외 이상으로 개발할 예정이 없습니다.
실력도 안되지만 다른 작업들이 많은지라...
넵 답변너무 감사드립니다~~ 뿌잉뿌잉~ 어제 그냥 제로보드 셋팅해서 제로보드 공부하고잇어요 ㅎㅎ
그런데요 부트스트렙에서 에러나와서 파일첨부가 안되더라구요 흑흑
그런데요 부트스트렙에서 에러나와서 파일첨부가 안되더라구요 흑흑
적용해봣는데 전혀 스마트 에디터로 안나오고 그대로 전께 나오네요..
크롬이랑 익스플로러10 은 안되는건가요..ㅠ?
뭔짓을 해도 그대로라 지금 애가 탑니다 힝
크롬이랑 익스플로러10 은 안되는건가요..ㅠ?
뭔짓을 해도 그대로라 지금 애가 탑니다 힝

감사합니다

플래시 이미지 변경