Articles‎ > ‎

구글사이트, 게시판에 Tag 기능추가

posted May 16, 2011, 9:21 PM by Sundew Shin   [ updated Mar 15, 2012, 8:24 AM ]

주제 배경

전체 구글앱스 패키지를 놓고 보면 활발히 업데이트가 진행 되는 부분이 있는가 하면 몇년이 지나도 큰 변화가 없는 부분이 있습니다.
2011년 Google I/O 트렌드에서도 나타나는데요, 주요 관심사항은 단연 안드로이드 기반 모바일플렛폼이고, 구글앱스에 한해서는 Google Docs (특히 Spreadsheet)의 기능 개선/추가 였습니다. 아마도 Microsoft Office의 시장점유율(market share)을 빼앗아 오기 위해서는 우선 기능적으로 필적해야만 한다는 필연성 때문이라고 생각합니다.

문제는 낙후(?) 되어 있는 부분인데요. 그 중에 대표적인 것이 Google Sites의 게시판 기능이라고 생각합니다.

The Same-old Google Sites Forum Support

수많은 기능 개선요구들,  예를 들면 익명응답(anonymous comment) 기능 추가같은것들에도 불구하고 항상 변함 없는 모습을 보이고 있지요.[1] 이지오 사이트도 게시판을 많이 사용하는데, 그중에 가장 아쉬운 것이 흔히 'Tag 기능'이라고 하는 것입니다.

Tag & Tagging Feature

Tag란 해당항목을 설명하는 메타데이터의 일종으로 정보의 원활한 검색을 돕습니다. 일반적으로 게시물의 원제작자나 독자에 의해 자유롭게 생성된다고 할 수 있습니다.[1] Tag기능이란, Blogger.com이나 아래 Engadget과 같이 기사 위주 사이트에서 주로 사용하는 게시물 분류 시스템입니다.

혹시 여러 게시판이 있는 홈페이지를 운영 해 보신 경험이 있다면, 사용자들의 게시물들을 적당한 게시판으로 옮기고 삭제하고 하는 것이 상당한 '일'이라는 것을 아실것 입니다. 이 것에 대한 개선책이 Tag기능입니다. 게시판은 하나로 통합 하고, 대신, 각 기사별로 해당하는 카테고리 키워드 표시, 즉 Tag를 붙여서, 사용자가 Tag를 선택하면(링크를 누르면) 해당주제의 게시물만을 검색해서 리스트로 보여주는 기능입니다.

Article Tagging System Use Case, Engadget.com

Tag Planning - Common

이 내용은 앞으로 설명 될 각각의 tag 구현 방법과 상관없이 공통으로 적용되는 부분입니다.
무엇보다도 먼저 어떤 구분 키워드(tag)로 게시물들을 구분 할지를 먼저 결정 해야 합니다. 보통 tag는 범사이트적으로 규격화 되어 있지 않은 특성이 있지만, 한 사이트에서만은 일관된 기준으로 적용되어야만 합니다. 너무 당연한 이야기지만 예를 들어 설명하겠습니다.
  • 두 개의 게시물이 있습니다.
  • 하나는 '과일'에 관한 것이고 또 하나는 '사과'에 관한 것입니다.
  • 각 게시물에 tag를 붙였는데, 주제대로 과일에 관한 것은 'tag:과일',
  • 사과에 관한 것은 'tag:사과'라고 붙였습니다.
이 경우 문제점은, 사용자가 모든 과일관련 게시물을 검색하려고 '과일' tag를 선택 했지만 '사과' 게시물이 검색되지 않는다는데 있습니다.
전체적으로 다음과 같이 두 그룹의 주변 게시물이 있다고 가정 해 보겠습니다:
  1. tag:육고기, tag:생선, tag:채소, tag:과일...
  2. tag:사과, tag:귤, tag:배, tag:바나나...
위의 예시 게시물들이 1번 그룹에 속해 있다면, 'tag:사과'로 했던 게시물은 'tag:과일'로 묶는 것이 자연 스럽고, 2번 그룹의 경우라면 'tag:과일'의 게시물을 'tag:일반'이라던지 'tag:공통' 같은 것으로 정하는게 좋을 것입니다. 이와 같이 Tag기준은 주제가 계속 분화되면서 변경이 불가피하겠지만 처음에 기본틀을 잘짜고, 그 틀에서 일관성을 유지하도록 노력하는 것이 중요합니다.

Implementation 1 - Full Manual

이지오는 최근에 Google Sites의 게시판(Announcement) 형태에 이 Tag 기능을 추가 하였습니다. 다음 그림에서 중간상단쯤에 tag링크들이 모여있는 것이 보일텐데요, 각 tag를 클릭하면 해당 tag 주제로 등록된 게시물들이 목록으로 표시 됩니다.

Tagging on Google Sites, EGO.wednus.com

구현 방법은 완전 수작업이고 단순한데, 각 Google Sites로 생성된 사이트에 기본 제공되는 '사이트내 검색' 기능을 이용하는 것입니다.
샘플 게시물을 하나 열어 보겠습니다.
이 게시물의 맨 하단을 보면 다음과 같은 내용이 있습니다:
  • tag:business | tag:script | tag:calendar | tag:demo | tag:visualization
이 것들은 앞장에서 설명한 기준으로 본 게시물에 붙이고자 결정한 tag의 리스트입니다. 즉, 이 게시물을 다음과 같은 tag 검색시 표시하겠다는 뜻입니다. 이 부분은 그냥 수작업으로 게시물 하단에 추가 했고, 주컨텐츠에 해당되는 내용은 아니므로 좀 더 작은 글씨로 표현한 것입니다.
이와 같은 방법으로 모든 게시물에 tag 리스트줄을 추가합니다. 역시, 그 때 그 때 기분마다 tag명을 결정하는 것은 아니고, 앞에서 정한 기준에 맞춰 결정합니다.

Update: 단순히 텍스트를 기입하는것도 좋지만 아래에서 소개하는 tag의 링크도 함께 포함 시킨다면 더 좋습니다.

이제 tag별로 검색하는 링크를 만들 차례입니다. 링크를 넣고자하는 페이지에서 HTML source editing을 선택하고, tag:사과의 경우 다음과 같이 코드를 삽입 합니다.
  • <a href="https://sites.google.com/a/wednus.com/ego/system/app/pages/search?q=tag:사과&;scope=search-site">script</a>
여기서 중요한 부분은 다음과 같습니다:
  1. 전체 URL, https://sites.google.com/a/wednus.com/ego/system/app/pages/search?으로 붙이는 것은, 번거럽기는 하지만,  system/app/pages/search?와 같이 했을 때 2차도메인 메핑시 동작하지 않는 문제를 방지 합니다.
  2. 검색 scope가 search-site로 되어야 합니다.
Update: 부득이 2차도메인 영역에서만 처리를 원한다면 아래와 같이 full URL을 명시 해 주도록 합니다.
  • <a href="http://ego.wednus.com/system/app/pages/search?q=tag:사과&;scope=search-site">script</a>
이 방법은 대부분의 수작업들이 그러하듯 일일이 번거럽고 오타 등 실수가 들어갈 수 있지만 동작 하나만큼은 100% 확실합니다. =)

[Update 예고]

아직은 Google Sites로 생성한 사이트의 기본틀에 변화가 불가능 해서 자동화된 기능은 찾지 못했습니다. 새로운 대안이 나온다면 본 게시물을 통해 계속 안내 해 드리도록 하겠습니다.

이 하 내용:
  • 구현을 위한 다른 가능성/방법
  • Word Cloud 구현 가능성
  • ...

--
이 게시물 편집에 참여를 원하시면 ego '@' wednus.com으로 연락 바랍니다.

References

  1. Google Sites의 게시물에 comment를 작성하려면 최소 해당페이지/사이트에 대해 'can edit' 권한이 있어야 합니다. 즉, 8/19/11 현재까지도 익명의 방문자가 comment기능을 사용할 수 없고 입력창도 보여지지 않습니다.
    http://www.google.com/support/sites/bin/answer.py?hl=en-GB&answer=90594
  2. Tag (metadata). (2011, August 8). In Wikipedia, The Free Encyclopedia. Retrieved 07:27, August 16, 2011, from http://en.wikipedia.org/w/index.php?title=Tag_(metadata)&oldid=443653612

tag:sites | tag:tips
Comments