묻고답하기
클릭할때마다 글 조회수 올리기..
2010.08.09 10:20
XE 버전 1.4.3입니다.
아래 코드를 modules/document/document.controller.php에 아래 코드를 수정하였는데,
정상적으로 동작은 되나 조회수 증가는 안됩니다.
이유가 무엇일까요?
혹시 XE 버전이 높아서입니까.
아니면 다른 처리할 게 있나요?
=================================================================
/**
* @brief 해당 document의 조회수 증가
**/
function updateReadedCount(&$oDocument) {
$document_srl = $oDocument->document_srl;
$member_srl = $oDocument->get('member_srl');
$logged_info = Context::get('logged_info');
// 조회수 업데이트가 되면 trigger 호출 (after)
$output = ModuleHandler::triggerCall('document.updateReadedCount', 'after', $oDocument);
if(!$output->toBool()) return $output;
// session에 정보로 조회수를 증가하였다고 생각하면 패스
if($_SESSION['readed_document'][$document_srl]) return false;
// 글의 작성 ip와 현재 접속자의 ip가 동일하면 패스
if($document->ipaddress == $_SERVER['REMOTE_ADDR']) {
$_SESSION['readed_document'][$document_srl] = true;
return false;
}
// document의 작성자가 회원일때 글쓴이와 현재 로그인 사용자의 정보가 일치하면 읽었다고 판단후 세션 등록하고 패스
if($member_srl && $logged_info->member_srl == $member_srl) {
$_SESSION['readed_document'][$document_srl] = true;
return false;
}
// 조회수 업데이트
$args->document_srl = $document_srl;
$output = executeQuery('document.updateReadedCount', $args);
// 세션 등록
$_SESSION['readed_document'][$document_srl] = true;
}
댓글 1
-
아네모네
2010.09.03 08:32
XE 코어 버전: 1.4.3(이하버전은 적용 되는거 같아요~) 잘 살펴보시면~ 비슷한 곳이 서너곳 나오는데요~ 다른부분은 변경해도 증가 안되요~ modules/document/document.controller.php 수정(Line 554~579) 소스중 해당되는 554라인부터~ 나오던데요 이부분을 수정해주셔야해요~ 저같은경우~ 업데이트 된 코어버전: 1.4.3.1 에서는 적용이 안되는거 같아요~ 1.4.3 버전까지 잘 사용했었어요~