2026, 새로운 도약을 시작합니다.

네이버 스마트에디터 적용하기

네이버의 스마트에디터를 그누 스킨에 적용하는 방법이 없어서 올려봅니다.

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를 이용해서 처리하면 됩니다.
 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');

많이 사용하시길 바래요~~~
많은 분들이 댓글 질문을 하셨는데, 자주 들어오지 않는 관계로 답변을 못해드린게 많았네요..
간혹 들어오는대로 답변을 달거나 이해가 잘 가시도록 본문을 수정하겠습니다.
|

댓글 36개

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

추천해 주신분들 감사합니다 ^^
감사합니다~
이거 utf-8 버전인가요?
위의 글을 보니 그런것 같은데... 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)"
이거 넣으니 잘됩니다.
해봐야 겠습니다. ^^*
6번이 무슨뜻인지 잘 모르겠어요ㅠㅠㅠㅠㅠㅠㅠㅠ
'적용할 textarea'라는게 무슨뜻이죠?
제가 적용하고 싶은 스킨에는 textarea 태그가 없는데요ㅠㅠㅠㅠㅠ
한참 늦었지만 나중에 오시는 분들 위하여..
적용할 textarea란 기존 write.skin.php 페이지 안에 기존 ch에디터나 입력란으로 사용된 textarea 태그를 말하는 것 입니다. 해당 태그를 위 코드로 교체하라는 얘기 입니다.
적용하시고자 하는 스킨에 textarea 태그가 없지는 않을 것이니 다시 확인해 보시면 됩니다.
고맙습니다. 아주 잘됩니다 ^^
저는 저 위에대로 다 한거 같은데... 적용이 안됩니다...
왜 그럴까요... 뭐가 문제일까요?
오랜만에 들어오네요.. 제가 글 올려 놓고 자주 들여다 보질 못하니 허접 소스 올려놓고 A/S 못해 드리는 접 양해를 바랍니다.
만약 적용이 안된다면 어떤 식으로든 에러 메시지를 보셨을 것 같은데요...
어떤 에러인줄 알아야 알려드릴 수 있을 것 같습니다.
cheditor 관련 내용이 없음에도 불구하고
글쓰기시 '글쓰기에는 $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로 날리면 될거 같은데, 죄송하지만 위 코드 외 이상으로 개발할 예정이 없습니다.
실력도 안되지만 다른 작업들이 많은지라...
넵 답변너무 감사드립니다~~ 뿌잉뿌잉~ 어제 그냥 제로보드 셋팅해서 제로보드 공부하고잇어요 ㅎㅎ

그런데요 부트스트렙에서 에러나와서 파일첨부가 안되더라구요 흑흑
적용해봣는데 전혀 스마트 에디터로 안나오고 그대로 전께 나오네요..
크롬이랑 익스플로러10 은 안되는건가요..ㅠ?

뭔짓을 해도 그대로라 지금 애가 탑니다 힝
감사합니다
플래시 이미지 변경

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.
번호 제목 글쓴이 날짜 조회
3309 3년 전 조회 2,009
3308 11년 전 조회 2,327
3307 6년 전 조회 5,018
3306 6년 전 조회 3,492
3305 6년 전 조회 1.3만
3304 7년 전 조회 3,972
3303 7년 전 조회 3,950
3302 7년 전 조회 1.4만
3301 8년 전 조회 5,095
3300 8년 전 조회 6,190
3299 8년 전 조회 1.1만
3298 8년 전 조회 4,231
3297 8년 전 조회 4,657
3296 8년 전 조회 1.2만
3295 8년 전 조회 1.5만
3294 8년 전 조회 6,242
3293 8년 전 조회 5,860
3292 9년 전 조회 5,512
3291 9년 전 조회 1.4만
3290 9년 전 조회 5,268
🐛 버그신고