묻고답하기
스팸 금지 keyword 호출방법.
2015.09.15 15:55
통합검색에서 스팸키워드로 등록된 게시물의 경우 차단하려고 하는데요..
// Set a variable for search keyword
$is_keyword = Context::get('is_keyword');
$bannedWords = array("xxx","sss","바보");
if(in_array($is_keyword,$bannedWords)) return new Object(-1,'금지어입니다');
기존에 이런식으로 수동적으로 ban 키워드를 작성해야했는데.
spam modules keyword 를 호출하여 차단하면 좋을 것 같은데..
$oFilterModel = getModel('spamfilter');
$output = array($oFilterModel->isDeniedWord($is_keyword));
if(in_array($is_keyword,$output)) return new Object(-1,'금지어 또는 보호를 받고 있는 키워드입니다.');
이런식으로 작성해줬지만 되질 않네요..
댓글 7
-
퍼니엑스이
2015.09.15 16:53
-
꾸링
2015.09.15 16:57
아 감사합니다 배열로 할필요가 없었네요
-
꾸링
2015.09.15 16:59
테스트를 해봤는데 알려주신대로 작성시 모든 키워드가 return 되어버립니다.;
$is_keyword = Context::get('is_keyword');
부분에 context 로되어있기 때문에 알려주신 방법으로는 되질 않고
배열을 사용해서 값을 매치해야될 것으로 보이는데 아닌가요..?
-
퍼니엑스이
2015.09.15 17:07
/**
* Search Result
*
* @return Object
*/
function IS()
{
$oFile = getClass('file');
$oModuleModel = getModel('module');
$logged_info = Context::get('logged_info');// Check permissions
if(!$this->grant->access) return new Object(-1,'msg_not_permitted');
$is_keyword = Context::get('is_keyword');
$oFilterModel = getModel('spamfilter');if($oFilterModel->isDeniedWord($is_keyword))
{
return new Object(-1, '금지어 또는 보호를 받고 있는 키워드입니다.');
}이런 식으로 작성해봤는데, 그래도 안되시는가요?
-
꾸링
2015.09.15 17:11
isx 모듈을 사용해서
function ISX()
{
$oFile = &getClass('file');
$oModuleModel = &getModel('module');// 권한 체크
if(!$this->grant->access) return new Object(-1,'msg_not_permitted');부분 뒤에 말씀해주신 대로 추가했지만, 모든 키워드가 return 되는 문제가 있습니다.
if($oFilterModel->isDeniedWord($is_keyword))
값에 모든 키워드가 걸리는 것으로보아 oFilterModel 이 걸러내는 방법을 잘못쓴게 아닐까 싶네요..
보통 $text = $obj->title . ' ' . $obj->content;
$output = $oFilterModel->isDeniedWord($text);이렇게 사용되어져있는데
저는 변수저장할 때 context로 is_keyword를 저장한게 자꾸 걸리네요..
-
퍼니엑스이
2015.09.15 17:17
$oFilterModel = getModel('spamfilter');
$isDeniedWord = !$oFilterModel->isDeniedWord($is_keyword)->toBool();
if($isDeniedWord)
{
return new Object(-1, '금지어 또는 보호를 받고 있는 키워드입니다.');
}이렇게 해보세요.
-
꾸링
2015.09.15 17:20
아 잘되네요 감사합니다.
혹시 toBool 가 무슨뜻인지 알려주실 수 있나요..?
글쓴이 | 제목 | 최종 글 |
---|---|---|
XE | 공지 글 쓰기,삭제 운영방식 변경 공지 [16] | 2019.03.05 by 남기남 |
jin**** | 갑자기 에러가 뜹니다.. | |
mcls**** | 그룹 이미지 마크만 삭제 할수 없나요? [2] | 2015.09.14 by mcls**** |
마르티스 | 1.8.10 업뎃 후 오류 문의 | |
부산민지아빠 | 최근게시물 위젯에서 content 줄바꿈 문제 | |
슈니슈니 |
분류탭중에 전체보기 없애기
[2]
![]() | 2015.09.14 by 슈니슈니 |
예봉 |
메인 홈 플래쉬 관리
![]() | |
Ystory |
서브메뉴 세로에서 가로로 이동 하는 방법.
![]() | |
용가리13호 |
로그인스킨 변경 후 로그인 안됨
[5]
![]() | 2015.09.14 by 용가리13호 |
예봉 |
XE 관리자 페이지 문의
[2]
![]() | 2015.09.14 by 예봉 |
브룸 | SH 메모 스킨의 에디터 스킨을 바꾸고 싶습니다. [1] | 2015.09.14 by 닉이 |
지에치케어 |
누리고 결제 모듈 사용방법
[1]
![]() | 2015.09.14 by YJSoft |
c2**** | php 문법을 xe템플릿으로 바꾸려고 합니다 [4] | 2015.09.14 by c2**** |
지에치케어 | 회원가입창에 쪽지 허용 삭제 방법좀 알려주세요 [2] | 2015.09.14 by 지에치케어 |
young |
로그인창을 변경하려고하는데요..
![]() | |
하루 | PC버전 안들어가짐 [1] | 2015.09.14 by DoorWeb |
빡맹a |
관리자 로그인 오류
![]() | |
bluestar | db.config.php 어디서 구합니까? [5] | 2015.09.14 by bluestar |
JinK | 기본 URL 설정이 안 되어 있습니다. (원인은 정확히 알고, 피해갈방법알아냈는데..편법이라...) [1] | 2015.09.14 by JinK |
devflow | 사이트 메뉴 편집 버그 [2] | 2015.09.14 by devflow |
초보에염 | 탭위젯 다국어변경 ...문제 [3] | 2015.09.14 by OEZ |
$oFilterModel = getModel('spamfilter');
if($oFilterModel->isDeniedWord($is_keyword))
{
return new Object(-1, '금지어 또는 보호를 받고 있는 키워드입니다.');
}
이런식으로 작성하시면 됩니다.