[첫화면으로]위키의블로그화프로젝트

마지막으로 [b]

1. 현재 Diary의 문제점
2. 해결책 궁리
3. 블로그 흉내내기
3.1. 기본 아이디어
3.2. 구현 계획
3.2.1. 블로그 목차
3.2.2. 새 포스트 쓰기
3.2.3. 개별 포스트 페이지
3.2.4. 블로그 첫화면
3.2.5. 날짜별 블로그 관리
3.2.6. 블로그 관련 매크로
3.2.7. 블로그 전용 RSS
3.2.8. 부가 기능
3.3. 한계점
4. 실제로 사용하기
4.1. 새로 만들기
4.2. 기존 일기장 방식에 덧붙이기
4.3. 기존 일기장도 블로그 방식으로 변환하기
5. 기타

1. 현재 Diary의 문제점

Diary, Jof:조프일기, Babel:NyxityMonologue 등은 조프님의 Jof:위키의일기장화프로젝트 아이디어를 사용하여 위키위키에서 블로그와 유사하게 날짜 순으로 내용을 표시하고 있다. (Diary는 2005년 3월부터, Babel:NyxityMonologue는 2005년 4월 19일부터 이 페이지의 내용대로 수정되었음)

이렇게 일기장을 구성했을 때의 장점은 다음과 같다. (Jof:위키의일기장화프로젝트에서 옮김)

반대로 이런 위키일기장의 단점은,
.... Diary/2004-04-01
.... Diary/2004-04-13
     ....
.... Diary/2004-12-23
.... Diary/2005-01-08

2. 해결책 궁리

그래서, 제목이 단순한 날짜가 아니라 내용을 나타낼 수 있게 할 방안을 궁리해 보자.

그 중 하나는, 현재의 "페이지제목"과 별개의 "제목"을 도입하는 방안이다.

현재 UseModWiki의 각 페이지는 "페이지제목.db"이라는 이름으로 DataDir에 저장되어 있고, 그 파일 안에는 페이지의 생성 시각, 수정 시각, 리비전 번호, 수정한 사람, 페이지의 내용 등이 들어간다. 여기에 별도로 "제목" 자료구조를 더 추가하여, 페이지리스트 등에서 이 제목을 출력하게 만들 수 있겠다.

그렇지만, 아무리 생각해도 좋은 방법이 아니다.

따라서 일단 기각.

다른 방안은, 현재 Diary와 유사하게, 온갖 잡다한 매크로를 추가하여 블로그 흉내를 내는 것이다. 이걸 좀 더 궁리해 보자.

3. 블로그 흉내내기

3.1. 기본 아이디어

위키의블로그화프로젝트, 줄여서 위키블로그의 기본 아이디어는 이렇다.

이렇게 하면 다음의 장점이 있다.

사실 위의 구현은, 생각해보면 처음부터 가능했던 것들이다. 그냥 "Blog"라는 페이지 하나 만들고, 새로 글을 쓸 때는 Blog에다가 새 페이지의 링크를 추가해주면 된다. 그렇지만 이 경우 아래와 같은 문제점이 있다.

그런데 이제는 위의 두 가지 문제점을 해결하는 것이 수월해졌다.

3.2. 구현 계획

블로그 페이지를 만든다. 페이지 이름을 "Blog"라고 하자.

3.2.1. 블로그 목차

다음 블로그의 전체 포스트 목록 페이지를 만든다. "Blog/목차"라고 하자.

"Blog/목차"페이지의 구성은 다음과 같다.
* [[/세번째포스트]] 2005-03-01   <-- 가장 마지막 글이 제일 위에
* [[/두번째포스트]] 2005-02-20
* [[/첫번째포스트]] 2005-02-10   <-- 가장 첫 글이 제일 아래에

3.2.2. 새 포스트 쓰기

새 포스트를 올릴 때는, "Blog/목차"페이지에 새 포스트의 제목 링크와 날짜를 작성한 후, 링크를 클릭해서 새 글을 쓴다. 일일이 페이지를 고쳐서 쓰는 게 귀찮으니, comments 매크로와 유사한 blog_newpost 매크로를 만들어 쓰자.

3.2.3. 개별 포스트 페이지

각각의 포스트 아래에는 blog_prevnext(Blog/목차) 매크로를 둔다. 이 매크로는 prevupnext매크로처럼 목차를 읽어서 이전 글과 다음 글로 가는 링크를 띄움.

3.2.4. 블로그 첫화면

Blog페이지에는 기존의 includedays 와 유사하게 blog_include 매크로를 쓴다. 가장 최근 글 하나, 또는 가장 최근 몇 편의 블로그를 include 하여 보여 준다. 마지막에는 첫화면에 나온 포스트들보다 하나 전 포스트로 이동하는 링크를 둔다.

3.2.5. 날짜별 블로그 관리

Blog/목록 페이지에는 각 포스트 제목 옆에 날짜를 적게 하였다. 이 날짜를 가지고 처리를 한다.

3.2.6. 블로그 관련 매크로

위에서 얘기한 내용들과 연관된 매크로들

3.2.7. 블로그 전용 RSS

UseModWikiRSS기능은 최근변경내역과 유사하게, 페이지가 수정될 때마다 다시 해당 페이지를 RSS목록에 포함하는데, RSS리더기나 메타블로그 사이트에서 제대로 처리하지 못하는 경우가 보인다.

action=blog_rss 액션을 추가하여 목차페이지를 읽어서 RSS xml을 만들어 출력하도록 한다.

3.2.8. 부가 기능

태터 툴즈의 경우 본문 우측에, "달력", "카테고리", "최근 포스트", "최근 리플", "최근 트랙백", "월별 아카이브" 등의 목록이 뜬다. 이걸 흉내내 보자.

3.3. 한계점

4. 실제로 사용하기

실제로 적용해 보자.

4.1. 새로 만들기

이 홈페이지의 Diary페이지를 참조하여 동일하게 구성하면 된다.

<blog_newpost(Blog/List)>

4.2. 기존 일기장 방식에 덧붙이기

방법이 두 가지가 있는데... 또는 두 방법 다 막상 써 보면 새로 쓰는 글들과 기존의 글들 사이의 이동이 매끄럽지 않다는 한계가 있다.

4.3. 기존 일기장도 블로그 방식으로 변환하기

각각의 일기글 자체는 수정할 필요가 없다.
<blog_newpost(Diary/List)>        <-- 이 매크로 바로 아래 덧붙임
* [[/2005-02-26]] 2005-02-26      <-- 기존에 썼던 가장 마지막 일기
* [[/2005-02-18]] 2005-02-18      <-- 이런 식으로, 글의 제목과 작성날짜가 동일하므로 같은 날짜를 두 번 써주는 형식이 된다.
...
* [[/2003-09-14]] 2003-09-14
* [[/2003-09-13]] 2003-09-13      <-- 가장 처음 쓴 일기

5. 기타

그 외 필요한 기능이나 매크로가 있거나, 문제점이 보이는 것에 대해서는 아래 의견 남겨 주세요.

이름:  
Homepage:
내용:  


기타분류

마지막 편집일: 2012-2-11 12:25 am (변경사항 [d])
3242 hits | Permalink | 변경내역 보기 [h] | 페이지 소스 보기