그누보드5 관리자페이지 추가설정 및 게시판 글쓰기 단어필터링 정보
그누보드5 관리자페이지 추가설정 및 게시판 글쓰기 단어필터링첨부파일
본문
컨텐츠몰에 올렸던 것을 운영중단 예정이라 플러그인 게시판에도 올리는 것입니다. ^^
====
그누보드5 의 관리자페이지에 단어필터링2 설정을 추가하고, 설정된 단어를 게시판 글쓰기에서 필터링하는 소스입니다.
1. 제작 목적
그누보드5의 기본 단어필터링 시스템에 의해 게시판 글쓰기시에 단어를 필터링 할 수 있습니다.
하지만, 필터링된 단어가 "제목에 금지단어('무엇')가 포함되어 있습니다." 의 형태로 안내되기 때문에 해당 단어를 빼면 글쓰기가 됩니다.
수동으로 광고용 스팸 게시물을 입력하려고 할 경우, 단어를 띄어쓰기 등으로 조정하여 입력하면 스팸글이 입력되어 버립니다.
이를 막기 위해서 필터링된 단어를 보여주지 않도록 그누보드 게시판 스킨 소스의 위 얼러트 메시지를 수정할 수도 있지만,
별도의 관리자페이지 단어필터링 시스템을 만들어서, 필터링 단어를 구성하고,
이 단어들에 대해서는 그냥 "금지단어가 포함되어 있습니다." 로 안내를 하게 하여, 스패머들이 추가로 글쓰기를 할 수 없게 합니다.
2. 사용방법
adm폴더에추가 파일을 adm 폴더에 업로드하면, 관리자페이지에서 추가설정 메뉴가 보입니다.
콤마로 구분해서 필터링할 단어를 추가합니다.
게시판스킨폴더에추가 파일은 각 게시판 스킨 폴더에 넣으면 추가설정에서 입력한 단어가 필터링 됩니다.
게시판 스킨 폴더에 write_update.head.skin.php 파일이 이미 있으면, 소스만 복사해서 추가해 넣으시면 됩니다.
위 관리자페이지설정추가를 먼저 하셔야, 기능이 동작합니다.
3. 주의사항
디비에 g5_config_etc (소스상으로는, G5_TABLE_PREFIX . 'config_etc') 테이블을 추가합니다.
추가설정 페이지 로드시에 자동으로 추가됩니다.
만약, 같은 이름을 가진 테이블이 이미 다른 용도로 사용되고 있을 경우 오류가 날 수도 있습니다.
4. 기타
이 소스를 이용하지 않고, 각 스킨의 필터링 단어 alert 메시지를 수정하여 원하는 목적을 달성할 수도 있습니다.
하지만, 관리자페이지에 설정을 추가하는 방법과 필터링 단어를 구분하고자 하는 요구가 있을 수도 있기에 제작해 보았습니다.
제작자의 경우, 자동등록방지숫자를 제대로 입력하는 스팸글에 대해서 실제로 효과를 보고 있습니다.
5. 업데이트
2018-06-25 디비 생성시에 초기값이 입력되지 않는 오류 수정
3
댓글 전체
phpmyadmin 등으로 해당 테이블을 확인해 보시고,
같은 이름의 빈 테이블이 있으면, 삭제해 보세요..
혹시나, 해당 테이블을 다른 곳에서 사용하고 있는 것이라면,
테이블 이름을 바꾸셔야 할 것으로 보입니다.
그리고, 질문 내용중에 필터링 단어 예시는 가려 주시면 감사하겠습니다. ^^
그리고, 적용하다가 안되는 것이 있으면, 댓글 남겨 주시기 바랍니다.
해당 테이블이 있는지 체크하는 부분을 추가해야 할 것 같네요.
감사합니다.
자동으로 만들어지니, 수동으로 만드신 테이블은 삭제해 보세요.
그리고,
디비 테이블이 이미 있는지를 체크하는 구문을 추가하여, 소스를 업데이트 해 보겠습니다.
테이블을 삭제해도 안되시면, 조금만 기다려 주세요. ^^
업데이트된 새 파일을 올려 놓았습니다.
처음에 테이블 생성하고나서 insert 쿼리가 없더군요.
한건을 집어놓고 사용하시면 됩니다.
해당 코드를 수정하여, 업데이트된 파일을 올려 놓았습니다.
불편을 드려 죄송합니다.
영카트에서는 적용이 안되나요 ?
구체적으로 영카트의 어느 부분에 적용을 원하시는 지요?
bbs/board.php?bo_table=free
일반적인 스킨 파일에는 다 적용이 될 듯 한데,
특수한 상황이라면 보지 않고서는 확인이 힘들 듯 합니다.
적용해 보니 이상하게 필터링 문자에 < 문자를 넣으면 모든 문자가 필터링이 되네요 ㅠㅠ
특수 문자 처리 구문을 추가하였습니다.