웹마스터 팁
비회원도 추천가능하게 하기 (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
-
노튼
2011.11.18 20:18
-
빽짱구
2011.11.18 22:31
같은 IP에서 글을 남기고 그남긴글을 클릭할때는 추천이 되지않겠지만, 그렇지 않다면 당연히 구분할수있는게 없어서 중복추천이 되지 않을까요.
-
roks821
2011.11.18 23:38
저도 원하는 팁이었습니다.
위의 4곳을 수정하고 로그아웃을 하니 추천/비추천 이 안보이네요.
로그인하지 않은 상태에서도 추천/비추천이 보이고 클릭할 수 없나요?
제목 | 글쓴이 | 날짜 |
---|---|---|
2차 메뉴가 없을 경우 왼쪽 메뉴 숨기기 [5] | 엔시아- | 2009.07.16 |
트리메뉴(dtree) 대충 정리 [11] | 한이73 | 2009.07.19 |
까오천사님의 만기일 팁을 1.2.4에 맞게 수정했어요. [15] | 도파 | 2009.08.27 |
http://www.도메인주소/~as/xe/ 로 로그인 접속후~ [3] | wjnam | 2009.09.07 |
특정그룹회원에게 서비스 제공하기 [4] | 똑디 | 2009.09.12 |
XE 서버 이전할 때 통채로 압축해서 옮기는 완벽한 방법-로그인, 첨부파일문제 해결 [5] | 웰빙샵 지영 | 2009.09.15 |
로그인이 안되거나 첨부파일이 등록이 안될때. [9] | 똑디 | 2009.09.30 |
-추가- 당신의 XE 기반 홈페이지를 훅가게 하는 방법 4가지 [26] | 老姜君 | 2009.10.08 |
로그인 폼에 관리자는 [Admin] 나타나게 하기 [4] | 오스카 | 2009.10.10 |
게시판 리스트에서 확장변수를 카테고리처럼 보여주기 [11] | 고진감래 | 2009.11.05 |
ZB4로 현재까지 사이트를 운영하는분들 긴급 상황안내 (???) [2] | DuRi | 2009.11.20 |
메인 레이아웃에서 로그인이 안보이는 경우. | 김찬회425 | 2009.12.06 |
회원과 비회원 구분하여 출력하기 [6] | NEARSTORY | 2009.12.26 |
Flash swf 플래쉬 때문에 로그인이나 메뉴가 감추어졌을때에... [5] | 태림씨야! | 2010.01.23 |
로그인페이지와 새페이지 연결법 [2] | poko | 2010.01.30 |
쉬운 설치 - unexpected error 메시지창이 뜰 때 [9] | 현의느낌 | 2010.01.30 |
외부프로그램에서 제로보드 xe 및 그누보드 회원 연동(로그인) 하기 - 초간단 [1] | 한이73 | 2010.02.03 |
로그인 후 특정 그룹 페이지 가기 다른버전 [9] | 눈물많은OrOi | 2010.02.22 |
초보자를 위한 제로보드에 애드온 프로그램 설치하기 강좌 | 이하늘690 | 2010.02.23 |
플래시 뒤로 로그인창 숨는 문제 [5] | 김지훈295 | 2010.02.25 |
비회원으로 중복 추천 되지는 않나요??