테스트 사이트 - 개발 중인 베타 버전입니다

Syntax Hightlight 적용하기

· 6년 전 · 8514 · 15

그누보드 5.4버전에서 추가된 기능 중 하나인 훅을 이용하였습니다. 따라서 훅을 지원하지 않는 버전에서는 작동되지 않습니다.

 

extend 폴더에 아무이름.php 로 아래 내용을 입력하시면 됩니다.

 

글 작성시 [ code] 와 [ /code] 사이의 텍스트에 적용됩니다.

( [ code 에서 중간 공백은 지워주세요.)

 

[code]

<?
    function kh_tail_sub()
    {

        global $wr_id;


        // 게시판에서 view.php 호출할때 적용하도록
        if($_SERVER['SCRIPT_NAME'] != '/bbs/board.php' || !$wr_id) return;
    ?>
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/styles/a11y-dark.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/highlight.min.js"></script>

<script>
function sh(id) {
    var $id = $("#" + id);
    if ($id.length > 0) {
        var html = $id.html();
        html = html.split("[ code]").join("<pre><code>");
        html = html.split("[ /code]").join("</pre></code>");
        $id.html(html);
        $id.find("pre>code").each(function() {
            var text = $.trim($(this).text());
            $(this).text(text);
        });
    }
}

$(function() { 
    sh("bo_v_con"); 

    hljs.initHighlighting();
});
</script>
    <?
    }
    add_event('tail_sub', 'kh_tail_sub', G5_HOOK_DEFAULT_PRIORITY);
?>

[/code]

 

* 참고
- https://highlightjs.org/ 
- https://sir.kr/g5_tip/4897

댓글 작성

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

로그인하기

댓글 15개

6년 전
간단하니 좋군요
스마트에디터2 사용중인데요.
줄바꿈이 안되고 한줄로 나오는데 해결책이 있을런지요?
4년 전
다들 잘 되시나요? 저는 왜 안될까요? 위 설명대로 어렵지 않게 했는데 글을 쓰고
[ code]......[ /code] 이렇게 감쏴 줬는데 소스가 그대로 나오네요.
음...뭐가 문제 일까요?
4년 전
줄바꿈이 안되는데요. 혹시 되시는 분 있으신가요? 방법좀 공유해주세요.
4년 전
잘 안되실까요? [ code]... [ /code] 여기 부분 공백을 제거 해주니까 저는 잘되는데 어디서 문제실까요?

게시글 목록

번호 제목
24318
24317
24315
24309
24294
24293
24277
24262
24260
24253
24251
24236
24233
24228
24226
24221
24214
24203
24201
24199
24196
24195
24194
24192
24191
24187
24185
24183
24172
24168