coComments 플러그인 포기하다

개인적인 용도로 블로그에 coComments를 출력하기 위해 간단한 플러그인을 만들었는데, 기왕 만든김에 좀 더 다듬어서 공개할 요량으로 이리 저리 테스트해보던중 오작동을 찾게되었습니다.

기본적이 된 생각은 coComments에서 제공하는 피드를 읽어와서, 캐쉬파일로 저장해서 블로그에 출력해주는 것이었습니다만, java script로 호출된 코멘트 박스와 달리 피드에서는 대화형 코멘트를 표현 해 줄 수가 없더군요. 댓글이 달린 글에 상관없이 최근에 달린 댓글순으로 출력해 줄 뿐이었습니다. 그래서 좀 내키진 않았지만 DB에 테이블을 생성해서 그곳에 내용이 저장되도록 한 뒤 그 내용을 읽어들여서 출력하는 방식을 선택했습니다.

그래서 나온 결과물이 제 블로그의 coComments 페이지 입니다.

문제는 워드프레스에 탑재된 MAGPIE 를 이용해 피드를 읽어들였을때 자동으로 생성된 캐쉬파일때문에(wp-content/cache) 블로그 전체가 얼어버리는 현상이 첫번째입니다. 정확한 원인은 저로서는 찾을 길이 없어서 결국에는 wp-autoblog를 응용해서 따로 MAGPIE클래스를 생성해서 쓰는 수 밖에 없더군요. 이로인해 플러그인의 기능에 비해 플러그인 자체가 너무 비대해져 버렸습니다.

두번째는 php4.x, msql3.x 버전에서 한글을 제대로 읽어들이지 못하는 문제입니다. 해결법으로 MAGPIE의 설정에서 define('MAGPIE_OUTPUT_ENCODING', 'UTF-8')를 지정해줘서 본문 한글이 깨지는것은 해결했으나 제목부분은 여전히 물음표(???)로 표현됩니다. mysql DB에 저장될때에 뭔가 문제가 있나 했지만 생성된 캐쉬파일 자체에도 한글이 표현되지 않고 물음표만 나오는군요.

결국에는 너무 많은 단점들과 능력상 해결 할 수 없는 문제들로 인해 플러그인 공개를 포기했습니다.:cry:

너무 많은 단점들….
  • 데이터베이스에 새로운 테이블을 추가함.(coComments 하나 출력하자고 테이블까지 생성한다는게….)
  • 플러그인이 너무 비대함.(위에서 설명한대로….)
  • 한글을 완벽하게 지원하지 않음.
  • coComments의 피드구조가 바뀌면 무용지물이 됨.
그나마 몇가지 장점들….
  • DB나 cache폴더내에서 불러오기때문에 로딩시간이 현저히 줄어듬.
  • 표현 방식이나 스타일을 사용자가 원하는대로 지정할 수 있슴.

coComment 출력 플러그인 소개

coComment를 출력하기 위한 간단한 플러그인을 만들고 글을 작성하다가 혹시나 싶어서 검색해봤더니 역시나 플러그인이 있었네요

coComment를 이렇게 사용할 수도 있다는걸 이제야 알았습니다.
coComment서버와 소통하는데 걸리는 시간이 들쑥날쑥하게 걸리긴 하지만, 그 기능면에서는 만족할만한 결과를 보여주네요:-)

아래는 “show coComments“플러그인을 발견하기 전에 썻던 글입니다.^^;

계속 미뤄오고있던 coComment출력기를 만들어봤습니다. 자바스크립트를 이용할것이냐, rss 피드를 이용할것이냐를 고민하다 결국 좀더 간단한 작업인 rss쪽을 선택…

unfusions님이 공개하셨던 “단어압박“플러그인을 토대로 했기 때문에 크게 추가 할 사항이 거의 없었습니다. 단순히 rss피드를 읽어와서 리스트(

  • )형식에 맞게 출력만 해 줄 뿐입니다.

    이렇게 따로 플러그인을 사용 할 필요없이 coComment에서 제공하는 스크립트를 삽입하기만 하면 쉽게 내용을 출력 할 수 있지만, 좀 더 제 블로그에 맞게 출력하면서 조금 더 수정을 해서 “show/hide”나 “collapse”같은 효과도 넣어 보고 싶다는 생각에 만들게 된것입니다.

    테스트 중인 페이지는 “about”페이지에 속한 “cocomments“페이지에서 확인 하실 수 있습니다. 아직은 스타일 지정도 전혀 하지 않고 위에서 언급했던 효과들도 넣지 않아서 조금 밋밋합니다^^;

    rss를 사용하면서의 아쉬운점은.. 자바스크립트와 달리 읽어오는 댓글의 갯수를 지정 할 수 없다는것과, conversation을 인식하지 못하고 단순히 최근 댓글들을 나열한다는 것입니다.

  • 현재(2006년 5월 9일) “coComments“페이지의 출력을 “show coComments”플러그인으로 “coComments-Feed” 플러그인을 적용해서 출력중입니다.:)

    coComment의 활용

    입명이님의 을 보고 마음에 들어 사용중인 coComment를 활용하는 몇가지 방법을 찾게되어 정리해봅니다. 추후 더 괜찮은 방법이나 플러그인, 확장등을 알게되면 추가하도록 하겠습니다.

    1. 기본적인 활용

    Show »

    • coComment 사이트의 설명을 보시면 그림만 보고도 금방 적용 할 수 있습니다.
      coComment
    • 기본적으로 지원하는 블로그툴(“Blogger”, “Xanga”, “Kaywa”, “MSN Spaces”, “MySpaces”, “TypePad”, “Wordpress”, “Flickr”)에서는 Bookmarks Toolbar에 등록한 링크를 클릭하면 자동으로 coComment등록 버튼이 생성됩니다.
      coComment
    • 다들 사용하시듯 Share페이지를 통해서 자신의 블로그에서도 코멘트 리스트를 확인 할 수 있구요.
      coComment
    • Alert페이지에서 확인 할 수 있듯 RSS와 Atom 피드를 지원합니다.
      coComment
    • coComment 사용에 궁금한점은 coComment help page를 참고 하시면 됩니다.
    2. 워드프레스에서의 활용

    Show »

    • coComment Enhancer :: coComment를 이용하는 방문객이 번거롭게 북마크 툴바의 coComment 버튼을 클릭하지 않아도 자동으로 coComment에 덧글이 등록되도록 할 수 있는 플러그인 입니다.
    • 방문자가 코멘트 입력부분의 “toggle”버튼을 클릭하면 coComment로그인 창이 뜨고, 로그인하게되면 coComment등록 버튼이 생성됩니다.(이전에 이미 로그인된 상태라면 바로 coComment등록버튼이 생성됩니다.)
      coCommentcoCommentcoComment
    • 블로그 운영자로서 coComment를 이용하는 방문자를 위한 플러그인이라고 보시면 됩니다.
    3. 다른 블로그툴에서(tatter)의 활용

    Show »

    • 꼭 coComment에서 기본으로 지원하지 않는 블로그에서도 조금은 귀찮은 방법이지만 사용은 가능합니다. (깜박하고 그냥 코멘트를 등록해버리신 경우에도 이방법이 유용합니다. :))
    • 우선 방문한 블로그의 글에 덧글을 남긴뒤 자신이 남긴 덧글의 내용을 드래그(복사할때처럼)해둔 상태로 북마크 툴바의 coComment버튼을 클릭하면 coComment등록창이 뜹니다.
      coComment
    • 귀찮은점이 바로 위 스샷에서 보이듯이 기본적인 블로그 정보란이 비어있게 된다는 점인데, coComment Team의 블로그의 Standard Blog글을 참고하면 이 과정을 자동으로 입력되도록 할 수 있을듯 합니다..
    • 제가 그 글을 참조해서 태터툴즈 스킨중 “[##_rp_onclick_submit_##]”부분의 “td”안에 스크립트를 넣었더니 기본 정보가 입력되는걸 확인했습니다.
      coComment
    • 제가 태터의 치환자를 잘 알지 못해 제대로 적용해보진 못했지만, 스크립트 값(value)부분을 함수나 치환자로 알맞게 넣어주면 적용이 가능할것 같네요.
    • 아래는 제가 삽입한 스크립트 입니다.
    4. FireFox에서의 활용

    Show »

    4-1. coComment for Firefox
    • coComment for Firefox라는 확장이 있습니다
    • 북마크 툴바에 추가하는것과 비슷하더군요. 코멘트 입력창에 오른쪽 마우스를 클릭해서 coComment를 등록합니다.
      coCommnet-ff
    • 북마크 툴바에 있는 버튼을 클릭하는것 보다는 조금 편하네요.:|
    4-2. greasemonkey의 Userscript 사용
    • greasemonkey 확장을 이용하는 방법이 있더군요.
    • greasemonkey확장을 설치하고 coComment용 스크립트를 적용하면 됩니다.
    • 이 방법을 사용하면 coComment가 적용가능한 블로그에서 덧글을 달때 자동으로 coComment에 등록버튼이 생성되어서 coComment에도 그 덧글이 등록됩니다. 버튼을 따로 클릭하거나하는 번거로움이 전혀 없습니다.
    • 기본적으로 모든 사이트에서 userscript가 작동하게 되어있으니 적당히 필터링을 해 주는게 더 좋겠네요. 지정한 사이트에서만 작동하게하는법과, 지정한 사이트에서만 작동하지 않게하는법 두가지가 있습니다.
      coComment userscript config
    5. coComment와 Ajax-Comment

    현재 ajax-comment를 사용하는 블로그에서는 cocomment를 적용할 수 없습니다. cocomment 포럼에 관련 질문글이 있지만 아직 해결책이 없어보이네요. 사용자가 많아지고 있으니 조만간 해결되지 않을까 합니다.

    따라서, 제 블로그에서도 그때까지 ajax-comment를 꺼두려고 합니다. 갑자기 ajax-comment가 안된다고 이상하게 생각하지 마세요^^;