채택완료

smart editor를 연결하는데, editor.php.lib 파일을 어떻게 작성해야하는지 모르겠습니다.

일단 3개의 함수의 내용을 채워야 하는지는 알겠고, gc_editor_html에 에디터 html을 넣으면 되겠는데...

html에서 사용할 javascript file을 어디에 add시켜야할지 모르겠습니다;;

예전에 어떤 분이 올려주신 smartEditor 압축파일은 지금 그누커머스와 연동이 안되더라구요...

질문은,

1. <script type="text/javascript src="js/[file name]" ></script> 이걸 어느 함수에 어떻게 추가해야되는지..

2. gc_get_editor_js는 js file을 add시켜주는 함수인가요?

염치불구하고 코드를 붙여넣겠습니다.

읽어주셔서 감사합니다.

Copy
<?phpif( ! defined( 'ABSPATH' ) ) exit; // 개별 페이지 접근 불가 /*    환경설정에서 에디터 선택이 없는 경우에 사용하는 라이브러리 입니다.    에디터 선택시 "선택없음"이 아닌 경우 plugin/editor 하위 디렉토리의 각 에디터이름/editor.lib.php 를 수정하시기 바랍니다.*/ Class GC_wp_editor{     public static function init() {        add_filter('gc_editor_return_html', array( __CLASS__, 'gc_editor_html' ), 10, 3 );        add_filter('gc_get_editor_script', array( __CLASS__, 'gc_get_editor_js' ), 10, 2 );        add_filter('gc_chk_editor_script', array( __CLASS__, 'gc_chk_editor_js' ), 10, 2 );    }     public static function gc_editor_html($return_content, $id, $content)    {        if (!defined('GC_BOARD_USE')){      //현재 게시판에서만 사용되게 한다.            return $return_content;        }        ob_start();         $html ="        <script type=\"text/javascript\" src=\"js/HuskyEZCreator.js\" charset=\"utf-8\"></script>        <h1>Delete todo My First Heading</h1>                                                       <textarea name=\"content\" id=\"content\" rows=\"45\" style=\"width:500px;\"></textarea>                                                                                                                                                                    <script type=\"text/javascript\">                                                     var oEditors = [];                                                              nhn.husky.EZCreator.createInIFrame({                                                oAppRef: oEditors,                                                              elPlaceHolder: \"content\",                                                       sSkinURI:\"SmartEditor2Skin.html\",                                               fCreator:\"createSEditor2\"                                                   });                                                                         </script> ";         //wp_editor($content, $id);        return $html;    }      // textarea 로 값을 넘긴다. javascript 반드시 필요    public static function gc_get_editor_js($return_content, $id)    {        if (!defined('GC_BOARD_USE')){      //현재 게시판에서만 사용되게 한다.            return $return_content;        }        //$js_code = "var {$id}_wp_editor = tinyMCE.get('$id');\n";        //$js_code = "var {$id}_wp_editor = tinyMCE.editors['$id'];\n";        //return $js_code;        return "var {$id}_editor = document.getElementById('{$id}');\n";        //$js_code = "var {$id}_wp_editor = tinyMCE.editors['$id'];\n";        //return $js_code;    }      //  textarea 의 값이 비어 있는지 검사    public static function gc_chk_editor_js($return_content, $id)    {        if (!defined('GC_BOARD_USE')){      //현재 게시판에서만 사용되게 한다.            return $return_content;        }        return "jQuery('#{$id}-tmce').trigger('click');if (!jQuery.trim({$id}_wp_editor.getContent())) { alert(\"내용을 입력해 주십시오.\"); {$id}_wp_editor.focus(); return false; }\n";    }} GC_wp_editor::init();?>
|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트

안녕하세요.

워드프레스의 특성이 플러그인이나 테마를 자동 업데이트 하게 되면, 추가한 코드나 커스터마이징한 코드들이 전부 날라가게 됩니다. ( 그냥 초기화 됩니다. )

그래서 플러그인 같은 경우 커스터마이징 하고 싶다면 child 테마를 만들거나 별도의 플러그인을 만들고,

테마의 경우 child 테마를 만들어서 수정을 합니다.

수정은 hook 함수 ( add_action, add_filter, 기타 등등 ) 이용해서 해야 합니다.

질문내용과 같이 플러그인 등을 수정한다면, 나중에 자동 업데이트를 하게 되면 작업해 둔 것이 초기화 될것입니다. 따라서 질문내용과 같은 작업은 권하지 않습니다.

제가 나중에 시간이 되면 워드프레스 팁 게시판에 add_action 함수나 add_filter 함수를 이용해서 어떻게 스마트에디터로 변경할수 있는지 코드를 적어 놓겠습니다.

답변에 대한 댓글 1개

답변 감사합니다^^
좋은 하루 보내세요~!

답변을 작성하려면 로그인이 필요합니다.