태터툴즈 패치: 목록 한 쪽당 글 수(1/1/445)


블로그 판올림 완료라는 글에서 알 수 있듯이 태터툴즈 를 1.1로 판올림하면서 가장 불편했던 점이 목록 한 쪽당 글 수였다. 예전에는 검색 결과 목록이 나타나도 표시되던 글은 한 쪽당 글 수에서 설정한 만큼만 출력됐다.

그런데 1.1로 판올림되면서는 한 쪽당 글 수와 무관하게 목록 한 쪽당 글 수 만큼 블로그의 글이 출력된다. 사실 필자는 한 쪽당 글 수를 1로 설정해서 사용하고 있으며, 목록은 10으로 설정해서 사용하고 있다.

다른 페이지는 모두 정상인데 이처럼 목록이 출력되는 페이지는 글의 수가 10개가 출력되며 이 때문에 자동으로 구글 AdSense의 약관을 어기게된다. 아울러 목록의 수가 10개일 때 출력되는 글 역시 10개가 출력되기 때문에 한 페이지의 길이가 너무 길어진다.

inureyes님의 답글에서 알 수 있듯이 이 기능은 건의를 받고 이렇게 만든 기능이라고 한다. 따라서 이 문제가 수정될지 어떨지는 아직은 불확실한 것 같다. 결국 목마른 놈이 우물을 판다고 이 문제는 직접 패치해서 사용하게 되었다.

참고로 이 패치는 태터툴즈 1.1.1 RC1에서만 정상 동작한다.

  1. 일단 좋아하는 편집기를 이용해서 다음 세 개의 파일을 연다.
    파일목록
    blog/category/index.php 
    blog/search/index.php
    blog/tag/index.php

  2. 각 파일을 다음처럼 수정한다.
    패치
    blog/category/index.php(20 행)
    변경전: 
    list($entries, $paging) = getEntriesWithPagingByPeriod
    	($owner, $period, $suri['page'], $blog['entriesOnPage']);
    
    변경후: 
    list($entries, $paging) = getEntriesWithPagingByCategory ($owner, $category, $suri['page'], 1);

    $blog['entriesOnPage']화면에 출력할 글의 수로 바꾼다.

    패치
    blog/search/index.php(19행)
    변경전: 
    list($entries, $paging) = getEntriesWithPagingBySearch
    	($owner, $search, $suri['page'], $blog['entriesOnPage']);
    
    변경후: 
    list($entries, $paging) = getEntriesWithPagingBySearch
    	($owner, $search, $suri['page'], 1);

    패치
    blog/tag/index.php(17행)
    변경전: 
    list($entries, $paging) = getEntriesWithPagingByTag
    	($owner, $tag, $suri['page'],$blog['entriesOnPage']);
    
    변경후: 
    list($entries, $paging) = getEntriesWithPagingByTag
    	($owner, $tag, $suri['page'],1);

추가로 1.1.1 RC1에서는 태터 패치: TraceWatch 통계 보완도 정상 동작하지 않는다. 이 경우 다음처럼 패치하면 된다.

  1. blog/index.php 파일을 좋아하는 편집기로 연다.
  2. 파일의 끝 부분(63~66행)을 다음처럼 바꾼다.
    패치
    변경전:
    require ROOT . '/lib/piece/blog/begin.php';
    require ROOT . '/lib/piece/blog/entries.php';
    require ROOT . '/lib/piece/blog/end.php';
    
    변경후:
    header("Location: http://offree.net/".$entries[0]['id']);
    //require ROOT . '/lib/piece/blog/begin.php';
    //require ROOT . '/lib/piece/blog/entries.php';
    //require ROOT . '/lib/piece/blog/end.php';

1.1.1 RC2에서는 OBStartOBEnd라는 이벤트 핸들러로 문서의 시작과 끝을 제어할 수 있다고 한다. 따라서 1.1.1 RC2에서는 문서를 압축해서 전송하기 위해 더 이상 많은 파일을 패치할 필요가 없다.

2007/01/04 19:17 2007/01/04 19:17

구독 & 책갈피 글이 마음에 드신다면 로 편하게 구독하세요!!!

책갈피 하기: WZD | 구글 | 네이버 | 뉴스2.0 | 다음 | 델리셔스 | 마가린 | 북마커 | 야후 | 한RSS | 정보

촛불 문화제 소식
컴관련
오늘의글
인기글

걸린글 0 댓글 6

RSS : http://offree.net/rss/response/605

걸린글 : http://offree.net/trackback/605

  1. 주성치 2007/01/04 19:24 address edit & del reply

    애드센스는 광고단위가 3개 이상이되면 자동으로 그 다음부터는 출력이 되지않기때문에 부정클릭 걱정을 안하셔도 됩니다.

    • 도아 2007/01/04 19:25 address edit & del

      그런가요. 좋은 정보 감사합니다. 약관을 자동으로 어긴 것이 아닌가 했는데 확인해봐야 겠군요.

  2. Mr.Dust 2007/01/04 22:11 address edit & del reply

    아흐~ 티스토리라 우짜나 했더니 주성치님 말씀에 살았습니다. ㅎㅎ
    그나저나 저는 계속 adlogger 가 동작을 안해서 고민중입니다.
    일단 adlogger 를 정상화시키고 테스트 후에 태터 설정을 바꾸거나.. 아니면 도아님께서 테스트하시면 그냥 날로 먹겠습니다. 쿨럭 ;;

    그나저나 이것말고도 태그를 클릭하면 목록 수만큼 글 내용이 모두 출력되는 문제도 있는데, 이또한 당분간 수정이 안될듯 하더군요. 자 도아님 숙제입니다. 쿨럭 ;;

    • 도아 2007/01/04 23:11 address edit & del

      제 블로그에서는 정상적으로 동작하는데요. 설사 태깅된 글이 30개라고 해도 목록에는 10개, 블로그 글은 한개만 표시됩니다. blog/tag/index.php 파일을 패치했기 때문에...

      티스토리의 문제라면 제가 처리할 수 없는 부분이고요.

  3. isanghee.com 2007/01/05 02:45 address edit & del reply

    검색도 그렇고 태그를 출력할 때도 말씀처럼 목록수만큼 글이 출력되어서 불편하더라구요.
    위에서 언급하셨습니다만 혹시 1.1.0.2 버전에서도 이 방법이 될까요?

    • 도아 2007/01/05 08:55 address edit & del

      가능하겠지만 1.1.0.2와 1.1.1은 소스가 완전히 다르기 때문에 소스를 확인해야 합니다. 그런데 저는 1.1.0.2를 사용하지 않기 때문에 다른 분께 패스해야 할 것 같습니다.