Home 게시판 커뮤니티 Q&A 최근코멘트 한글깨지는 문제…문의드립니다!

6개 답변, 1 voice Last updated by Avatar of 082net082net 17 years, 5 months 전
  • 익명
    손님
    @
    #2774

    082NET 님 감사합니다…방명록 너무 좋습니다! 잘쓰겠습니다.

    말씀하신대로 확인해 본 결과 mbstring 모듈이 설치되어있지 않아서
    호스팅업체에 문의해서
    mbstring 설치하였습니다.

    이제 어떤걸 수정해야하는지 문의드리고 싶습니다.

    자세한설명 감사드리며 다시한번 부탁드리겠습니다!

    익명
    손님
    @
    #2775

    문제가 있어서 조언 좀 여쭈려고 합니다.

    Get recent Comment 라는 플러그인을 통해서
    최근코멘트를 사이드바에 출력시켰는데요…
    한글이 깨지는 문제가 발생합니다.

    http://placeblossom.com

    들어와보시면 사이드바에
    Recent Comments 에 한글코멘트가 다 깨지는걸 보실수 있으실겁니다.

    어디를 어떻게 수정해야하는지요…?
    완전 처음 설치형 블로그를 만들어본지라…
    초보라고 생각하시고 설명부탁드리겠습니다.

    감사합니다!

    익명
    손님
    @
    #2778

    문제가 있어서 조언 좀 여쭈려고 합니다.

    Get recent Comment 라는 플러그인을 통해서
    최근코멘트를 사이드바에 출력시켰는데요…
    한글이 깨지는 문제가 발생합니다.

    http://placeblossom.com

    들어와보시면 사이드바에
    Recent Comments 에 한글코멘트가 다 깨지는걸 보실수 있으실겁니다.

    어디를 어떻게 수정해야하는지요…?
    완전 처음 설치형 블로그를 만들어본지라…
    초보라고 생각하시고 설명부탁드리겠습니다.

    감사합니다!

    Avatar of 082net082net
    Keymaster
    @082net
    #2776

    우선 서버에서 mbstring 모듈을 지원하는지 확인해 봐야 합니다.

    https://kopress.kr/forums/topic.php?id=316

    위 링크를 참고하셔서 사용중인 서버의 PHP 정보를 확인해 보세요.

    정보 페이지에서 "mbstring"이란 단어를 찾을 수 없다면 해당 모듈이 설치되지 않은것입니다. (워드프레스에서는 기본적으로 mb_strcut 을 사용하도록 되어있는데, 현재 wonwon님의 현상으로 봐서 mbstring 모듈이 설치되지 않았을 듯 합니다.)

    호스팅 업체에 mbstring 모듈을 지원해 달라고 요청해 보세요.

    ## 댓글 내용을 짧게 자르는 과정(strcut)에서 일반 영어나 숫자등을 자르는것과 동일한 방식으로 자르게 되면 잘린 부분의 한글이 깨져버리는 경우가 있습니다. 이런경우 mbstring 모듈의 mb_strcut 기능을 사용해서 그 문제를 해결하는데, 이것은 사용중인 호스팅 서버에서 mbstring 모듈을 지원 할 경우메만 사용 가능한 것입니다. ##

    Avatar of 082net
    Facebook 사용자 모임 그룹 도 함께 운영되고 있으며, 격 주로 미트업과 스터디를 진행하고 있으니 관심 있으신 분들의 많은 참여 바랍니다 🙂
    Avatar of 082net082net
    Keymaster
    @082net
    #2779

    우선 서버에서 mbstring 모듈을 지원하는지 확인해 봐야 합니다.

    https://kopress.kr/forums/topic.php?id=316

    위 링크를 참고하셔서 사용중인 서버의 PHP 정보를 확인해 보세요.

    정보 페이지에서 "mbstring"이란 단어를 찾을 수 없다면 해당 모듈이 설치되지 않은것입니다. (워드프레스에서는 기본적으로 mb_strcut 을 사용하도록 되어있는데, 현재 wonwon님의 현상으로 봐서 mbstring 모듈이 설치되지 않았을 듯 합니다.)

    호스팅 업체에 mbstring 모듈을 지원해 달라고 요청해 보세요.

    ## 댓글 내용을 짧게 자르는 과정(strcut)에서 일반 영어나 숫자등을 자르는것과 동일한 방식으로 자르게 되면 잘린 부분의 한글이 깨져버리는 경우가 있습니다. 이런경우 mbstring 모듈의 mb_strcut 기능을 사용해서 그 문제를 해결하는데, 이것은 사용중인 호스팅 서버에서 mbstring 모듈을 지원 할 경우메만 사용 가능한 것입니다. ##

    Avatar of 082net
    Facebook 사용자 모임 그룹 도 함께 운영되고 있으며, 격 주로 미트업과 스터디를 진행하고 있으니 관심 있으신 분들의 많은 참여 바랍니다 🙂
    Avatar of 082net082net
    Keymaster
    @082net
    #2777

    우선 get-recent-comments 의 설정 페이지에서 설정을 한번 업데이트 해 보세요.
    기본적으로 캐쉬에 저장된 내용을 출력하기 때문에 이렇게 해 줘야만 새로 변경된 내용이 잘 적용 되었는지 확인 할 수 있습니다.

    그 뒤에도 계속 한글이 깨진다면 아래 설명에 따라 진행 해 보세요.

    이제 부터가 문제 입니다.

    수정 할 부분이 있습니다. 원리만 이해한다면 모두 같은 방식으로 수정하는 것 이기 때문에 시간만 있다면 충분히 쉽게 적용 할 수 있지만, 처음 접하시는 분들께는 조금 어려울 수 있습니다.

    사설이 길었군요. 요점은 글을 잘라내는 곳에서 substr() 함수를 쓴 곳을 mb_substr() 함수로, strlen()함수를 쓴 곳을 mb_strlen()함수로 교체해야 한다는 것 입니다.

    아래 설명은 1.5.5 버전에 맞춘 내용이니 다른 버전을 사용중이시라면 수정 시 주의하시기 바랍니다.

    플러그인 파일(get-recent-comments.php)을 텍스트 에디터로 열어 "function kjgrc_excerpt" 부분을 찾습니다. (대략 1101번째 줄 정도군요)

    1101~1118 줄 사이에서 (kjgrc_excerpt 함수 내에서)

    1. strlen(…. 이라고 된 부분을 mb_strlen(… 으로 바꿉니다.

    2. substr(a, b, c) 라고 된 부분을 mb_substr(a, b, c, ‘utf-8’) 로 바꿉니다.

    바꾼 결과를 보게 되면 아래와 같습니다. 손수 바꾸실 자신이 없으시다면 아래 내용을 그대로 복사하여 기존의 함수에 덮어씌우셔도 됩니다(1.5.5 버전일 경우).

    하지만 워드프레스를 계속 사용하시려면, 직접 수정 해 보셔서 이런 류의 수정작업에 익숙해 지시는게 좋습니다.

    function kjgrc_excerpt ($text,$chars_per_comment,$chars_per_word,$tag,$output)
    {
       $length = mb_strlen(str_replace($tag,"",strip_tags($output)));
       $length = $chars_per_comment - $length;
       $length = $length -2; // we will add three dots at the end
       if ($length < 0) $length = 0;
       if (mb_strlen($text) > $length) {
          $text = mb_substr($text,0,$length,'utf-8');
          $text = mb_substr($text,0,strrpos($text,' '),'utf-8');
          // last word exceeds max word length:
          if ((mb_strlen($text) - strrpos($text,' ')) > $chars_per_word) {
             $text = mb_substr($text,0,mb_strlen($text)-3,'utf-8');
          }
          $text = $text . "...";
       }
       #$text = "[EXCERPT]: '$text'";
       return "$text";
    }

    파일을 수정해서 다시 플러그인 폴더에 업로드(덮어씌우기) 하신 뒤에는 마찬가지로 get-recent-comments 설정 페이지에서 설정을 한번 업데이트 해 주셔야만 변경된 내용이 제대로 적용 됩니다.

    Avatar of 082net
    Facebook 사용자 모임 그룹 도 함께 운영되고 있으며, 격 주로 미트업과 스터디를 진행하고 있으니 관심 있으신 분들의 많은 참여 바랍니다 🙂
    Avatar of 082net082net
    Keymaster
    @082net
    #2780

    우선 get-recent-comments 의 설정 페이지에서 설정을 한번 업데이트 해 보세요.
    기본적으로 캐쉬에 저장된 내용을 출력하기 때문에 이렇게 해 줘야만 새로 변경된 내용이 잘 적용 되었는지 확인 할 수 있습니다.

    그 뒤에도 계속 한글이 깨진다면 아래 설명에 따라 진행 해 보세요.

    이제 부터가 문제 입니다.

    수정 할 부분이 있습니다. 원리만 이해한다면 모두 같은 방식으로 수정하는 것 이기 때문에 시간만 있다면 충분히 쉽게 적용 할 수 있지만, 처음 접하시는 분들께는 조금 어려울 수 있습니다.

    사설이 길었군요. 요점은 글을 잘라내는 곳에서 substr() 함수를 쓴 곳을 mb_substr() 함수로, strlen()함수를 쓴 곳을 mb_strlen()함수로 교체해야 한다는 것 입니다.

    아래 설명은 1.5.5 버전에 맞춘 내용이니 다른 버전을 사용중이시라면 수정 시 주의하시기 바랍니다.

    플러그인 파일(get-recent-comments.php)을 텍스트 에디터로 열어 "function kjgrc_excerpt" 부분을 찾습니다. (대략 1101번째 줄 정도군요)

    1101~1118 줄 사이에서 (kjgrc_excerpt 함수 내에서)

    1. strlen(…. 이라고 된 부분을 mb_strlen(… 으로 바꿉니다.

    2. substr(a, b, c) 라고 된 부분을 mb_substr(a, b, c, ‘utf-8’) 로 바꿉니다.

    바꾼 결과를 보게 되면 아래와 같습니다. 손수 바꾸실 자신이 없으시다면 아래 내용을 그대로 복사하여 기존의 함수에 덮어씌우셔도 됩니다(1.5.5 버전일 경우).

    하지만 워드프레스를 계속 사용하시려면, 직접 수정 해 보셔서 이런 류의 수정작업에 익숙해 지시는게 좋습니다.

    function kjgrc_excerpt ($text,$chars_per_comment,$chars_per_word,$tag,$output)
    {
       $length = mb_strlen(str_replace($tag,"",strip_tags($output)));
       $length = $chars_per_comment - $length;
       $length = $length -2; // we will add three dots at the end
       if ($length < 0) $length = 0;
       if (mb_strlen($text) > $length) {
          $text = mb_substr($text,0,$length,'utf-8');
          $text = mb_substr($text,0,strrpos($text,' '),'utf-8');
          // last word exceeds max word length:
          if ((mb_strlen($text) - strrpos($text,' ')) > $chars_per_word) {
             $text = mb_substr($text,0,mb_strlen($text)-3,'utf-8');
          }
          $text = $text . "...";
       }
       #$text = "[EXCERPT]: '$text'";
       return "$text";
    }

    파일을 수정해서 다시 플러그인 폴더에 업로드(덮어씌우기) 하신 뒤에는 마찬가지로 get-recent-comments 설정 페이지에서 설정을 한번 업데이트 해 주셔야만 변경된 내용이 제대로 적용 됩니다.

    Avatar of 082net
    Facebook 사용자 모임 그룹 도 함께 운영되고 있으며, 격 주로 미트업과 스터디를 진행하고 있으니 관심 있으신 분들의 많은 참여 바랍니다 🙂
7 글 보임 - 1에서 7 까지 (총 7 중에서)
  • 답변은 로그인 후 가능합니다.