웹마스터 팁
비회원도 추천가능하게 하기 (1.5기준설명)
2011.11.18 10:50
XE에서 추천,비추천은 로그인을 해야 가능한 구조입니다.
하지만 비회원으로 운영되는 사이트는 추천/비추천이 비회원도 가능해야한다고 생각됩니다.
아래 수정방법은 XE 1.5기준입니다만, 그이하 버전 1.4.x 도 라인만 다르고 소스는 비슷하니 찾아서 수정하시면 됩니다.
총4개의 파일을 여시고, 해당부분만 주석처리 하시면 됩니다.
1. /modules/document/document.model.php 을 여시고 461번째쯤 if($logged_info->member_srl) { 부분을 찾아서 그앞에 // 주석처리합니다. // if($logged_info->member_srl) { 이런식으로 되겠군요..
그리고 491번째쯤에 } 닫아준걸 // } 이렇게 주석처리합니다. 위에서 열었던걸 주석처리했기때문에 닫았던 것도 주석처리해주는 겁니다.
// if($logged_info->member_srl) {
$oDocumentModel = &getModel('document');
$columnList = array('+
'document_srl', 'module_srl', 'member_srl', 'ipaddress');
$oDocument = $oDocumentModel->getDocument($document_srl, false, false, $columnList);
$module_srl = $oDocument->get('module_srl');
$member_srl = $oDocument->get('member_srl');
if(!$module_srl) return new Object(-1, 'msg_invalid_request');
$oModuleModel = &getModel('module');
$document_config = $oModuleModel->getModulePartConfig('document',$module_srl);
if($document_config->use_vote_up!='N' && $member_srl!=$logged_info->member_srl){
// Add a Referral Button
$url = sprintf("doCallModuleAction('document','procDocumentVoteUp','%s')", $document_srl);
$oDocumentController->addDocumentPopupMenu($url,'cmd_vote','','javascript');
}
if($document_config->use_vote_down!='N' && $member_srl!=$logged_info->member_srl){
// Add button to negative
$url= sprintf("doCallModuleAction('document','procDocumentVoteDown','%s')", $document_srl);
$oDocumentController->addDocumentPopupMenu($url,'cmd_vote_down','','javascript');
}
// Adding Report
$url = sprintf("doCallModuleAction('document','procDocumentDeclare','%s')", $document_srl);
$oDocumentController->addDocumentPopupMenu($url,'cmd_declare','','javascript');
// Add Bookmark button
$url = sprintf("doCallModuleAction('member','procMemberScrapDocument','%s')", $document_srl);
$oDocumentController->addDocumentPopupMenu($url,'cmd_scrap','','javascript');
// }
전체적인 소스를 보면 대략 위와 같습니다.
2. /modules/document/document.controller.php 를 여시고 19번째줄쯤에 if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 부분을 찾아서 같은 방법으로 // 앞쪽에 주석처리 합니다. // if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 이렇게 되겠군요.
또 51번째줄도 if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 부분을 찾아서 주석처리해줍니다. // if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request');
이제 본문글 추천/비추천은 가능하게 됐구요. 다음은 코멘트도 추천/비추천을 가능하게 소스수정을 해줍니다.
3. /modules/comment/comment.model.php 를 여시고, 35째쯤 줄에 if($logged_info->member_srl) { 부분을 주석처리 합니다 // if($logged_info->member_srl) { 이렇게 됩니다.
마찬가지로 59번째 } 부분// } 이런식으로 주석처리해줍니다.
4. /modules/comment/comment.controller.php 를 여시고, 20번째줄쯤에 if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 를 찾아서 주석처리해줍니다. // if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 이렇게 됩니다.
그리고 42번째줄에 if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 를 찾으셔서 같은 방법으로 앞에 주석처리를 합니다. // if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request');
이제 다됐습니다.
본인이 쓴글에는 추천/비추천이 안되며 클릭을 했을때는 추천을 하실수 없습니다. 라고 나올것이며, 수정이 잘못됐다면 '잘못된 요청입니다'라고 나올겁니다. 이럴때는 천천이 다시 수정해보세요.
- [2017/08/11] 묻고답하기 글,댓글 추천 log에 member_srl이 있다가 없다가하네요. (버그일까요?) *1
- [2016/07/11] 묻고답하기 비밀번호 입력하라는 페이지 띄우는 소스가 어디에 있는지 궁금합니다. *2
- [2016/05/16] 묻고답하기 위지윅에디터 비회원 활성화 안되는 문제 *3
- [2015/08/25] 묻고답하기 XE 게시판 비밀글 자동 셋팅에 관해 여쭤봅니다. *11
- [2015/05/31] 묻고답하기 추천시에 '몇번째로 추천하였습니다.' 확인창 뜨게하는법. *4
댓글 3
제목 | 글쓴이 | 날짜 |
---|---|---|
mysql 을 이용한 사용자 인증 4 (index.htm 인증후 바로 넘기기) | 이성헌 | 2005.12.15 |
mysql 이용한 사용자 인증 3 (index.htm 파일) | 이성헌 | 2005.12.15 |
mysql 이용한 사용자 인증 2 (auth.inc 파일) | 이성헌 | 2005.12.15 |
mysql 을 이용한 사용자 인증 (통합 설명) | 이성헌 | 2005.12.15 |
아파치 httpd.conf 2차 설정본 - php 연동 | 이성헌 | 2005.12.15 |
계정 사용량 알아보기 | 이성헌 | 2005.12.15 |
제로보드 data 파일의 모드 변경 | 이성헌 | 2005.12.15 |
php 4.3.2 의 php.ini 내용 (내컴 설치본) | 이성헌 | 2005.12.15 |
apache httpd.conf 의 1차 설치본 - alias 사용 | 이성헌 | 2005.12.15 |
apache 인증에서 .htpasswd 의 내용. | 이성헌 | 2005.12.15 |
아파치 인증에서 .htaccess 의 내용. | 이성헌 | 2005.12.15 |
wo.to (유료서버) 의 아파치 폴더 인증 방법. | 이성헌 | 2005.12.15 |
아파치 인증-개인 컴퓨터 apache 서버 경우 | 이성헌 | 2005.12.15 |
자바스크립트 인증 | 이성헌 | 2005.12.15 |
zeroboard 아이디 , 비번 분실시 변경법. | 이성헌 | 2005.12.15 |
nWmail 서버 구축 방법- 자세한 문서는 w3ip.com 에 있음 | 이성헌 | 2005.12.15 |
apache 의 httpd.conf 에서 alias 사용례... | 이성헌 | 2005.12.15 |
mysql 사용법 요약 정리 | 이성헌 | 2005.12.15 |
iis+php+mysql+zeroboard 설치 [3] | 이성헌 | 2005.12.15 |
apache+php+mysql+phpmyadmin+zeroboard 설치 | 이성헌 | 2005.12.15 |