리퍼러로그가 텍스트큐브 1.8.5로 업그레이드 이후 동작이 멈추어 버렸다.
이유는 태터툴즈 1.3.1 시절에 리퍼러로그에 ip정보까지 넣기 위하여 DB를 수정한 적이 있는데 이것이 텍스트큐브 1.8.5와 테이블 구조가 상이하여 입력이 안되는 듯 하다.

하여 리퍼러 로그를 다시 동작시키기 위해서 텍스트큐브의 다음 부분을 수정하였다.

  1. 설치경로/framework/legacy/Textcube.Data.RefererLog.php 102줄을 다음으로 변경
    POD::query("INSERT INTO {$database['prefix']}RefererLogs
    values($blogid, '$host', '$url', UNIX_TIMESTAMP(), '{$_SERVER['REMOTE_ADDR']}')");
  2. 설치경로/library/components/Textcube.Model.Statistics.php(104): 줄도 다음으로 변경
    POD::query("INSERT INTO {$database['prefix']}RefererLogs
    values($blogid, '$host', '$url', UNIX_TIMESTAMP(), '{$_SERVER['REMOTE_ADDR']}')");
  3. 위와 동일 파일의
    getRefererLogsWithPage 함수수정

    return Paging::fetch("SELECT host, url, referred, ip FROM {$database['prefix']}RefererLogs WHERE blogid = $blogid ORDER BY referred DESC", $page, $count);

    위와 같이 IP 추가

 

2번의 경우에는 실제로 텍스트큐브가 동작하는 데에 영향을 미치지 않는 것으로 보이기는 하는데… 어떤 구조로 돌아가는지 더 파악해 봐야할 것 같다.

그리고 그 결과~

사용자 삽입 이미지

 

혹시라도 텍스트큐브 코어를 업데이트하는 경우에 참고하기

Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *