TapBBS v1.x.x Manual

3분 게시판, 초간단 MOBILE && PC 게시판.

TapBBS - ZzanLAB

세션 암호화 키 변경 방법

application/config/config.php $config['encryption_key'] = '암호화키'; TapBBS에서 기본으로 제공하는 것을 사용하지 않고 영문/숫자/특수문자 등을 조합하여 사이트별로 다르게 바꾸는 것이 보안적으로 안전합니다.

언어팩 변경방법 (언어 변경, 문구 수정, WYSIWYG (CKEditor))

언어 변경 application/config/config.php $config['language'] = '언어폴더명'; 언어폴더명 : application/language/언어폴더명 문구 수정 application/config/language/사용언어폴더 위 폴더에서 변경하고자 하는 문구를 검색해서 수정합니다. 단, 모바일에서도 공용으로 사용하므로, 모바일/PC 같이 테스트해보고 적절한 수정이 필요합니다. 단, 여러군데에서 사용하는 공용 문구일 수도 있으므로 적절한 수정이 필요합니다. WYSIWYG (CKEditor) 게시물 상세내용 front_end/third_party/ckeditor/config_contents.js config.language = '언어파일명(확장자제외)'; 언어파일명 : front_end/third_party/ckeditor/lang/언어파일명.js 게시물 상세내용 (ADMIN) front_end/third_party/ckeditor/config_contents_admin.js config.language = '언어파일명(확장자제외)'; 언어파일명 : front_end/third_party/ckeditor/lang/언어파일명.js 게시물 코멘트 front_end/third_party/ckeditor/config_comment.js config.language = '언어파일명(확장자제외)'; 언어파일명 : front_end/third_party/ckeditor/lang/언어파일명.js

새페이지 추가 방법

http://주소/page/introduce 처럼 회사소개 등의 추가페이지를 제작할 수 있습니다. front_end/themes/mobile||pc/스킨명/_template/새페이지.tpl http://주소/page/새페이지 front_end/themes/mobile||pc/스킨명/_template/새폴더/새페이지.tpl http://주소/page/새폴더/새페이지

에러 디버깅 방법 (CI log, CI profiler)

CI log application/config/config.php /* |-------------------------------------------------------------------------- | Error Logging Threshold |-------------------------------------------------------------------------- | | If you have enabled error logging, you can set an error threshold to | determine what gets logged. Threshold options are: | You can enable error logging by setting a threshold over zero. The | threshold determines what gets logged. Threshold options are: | | 0 = Disables logging, Error logging TURNED OFF | 1 = Error Messages (including PHP errors) | 2 = Debug Messages | 3 = Informational Messages | 4 = All Messages | | For a live site you'll usually only enable Errors (1) to be logged otherwise | your log files will fill up very fast. | */ $config['log_threshold'] = 4; 위 값 설정에 따라 application/logs/log-Y-m-d.php 형태로 쌓입니다. CI profiler 최고관리자로 로그인 후, 주소 뒤에 d 파라메터를 붙이면 페이지 하단에 CI profiler가 표출됩니다. http://주소/page/introduce?d http://주소/bbs/view/community?idx=86&page=1&view_category=&lists_style=&d

트리거 없이 설치 후, 다시 사용하는 방법

기능으로 제공하진 않고 있으며, application/models/install_model.php 의 트리거 생성 함수들의 내용을 이용하시기 바랍니다. by_insert_bbs_article_revision by_update_bbs_article_revision by_insert_bbs_category_revision by_update_bbs_category_revision by_insert_bbs_comment_revision by_update_bbs_comment_revision by_insert_bbs_contents_revision by_update_bbs_contents_revision by_insert_bbs_setting_revision by_update_bbs_setting_revision by_insert_setting_revision by_update_setting_revision by_insert_users_group_revision by_update_users_group_revision

설치 후, DB 접속 정보 변경 방법

application/config/database.php 적절히 수정하시기 바랍니다.

에러리포팅 변경 방법

/index.php /* *--------------------------------------------------------------- * APPLICATION ENVIRONMENT *--------------------------------------------------------------- * * You can load different configurations depending on your * current environment. Setting the environment also influences * things like logging and error reporting. * * This can be set to anything, but default usage is: * * development * testing * production * * NOTE: If you change these, also change the error_reporting() code below * */ define('ENVIRONMENT', 'production'); /* *--------------------------------------------------------------- * ERROR REPORTING *--------------------------------------------------------------- * * Different environments will require different levels of error reporting. * By default development will show errors but testing and live will hide them. */ if (defined('ENVIRONMENT')) { switch (ENVIRONMENT) { case 'development': error_reporting(E_ALL); break; case 'testing': case 'production': error_reporting(0); break; default: exit('The application environment is not set correctly.'); } } 에러를 표출하려면 define('ENVIRONMENT', 'development');

404 등 에러페이지 변경 방법

application/errors errors_404.php : 404 에러 페이지 error_db.php : DB 에러 페이지 error_general.php : 일반 에러 페이지 error_php.php : PHP 에러 페이지

캐쉬 수동 삭제 방법

application/cache 폴더 안의 파일을 삭제합니다. bbs_setting_게시판시퀀스 : 게시판별 설정 recently_게시판시퀀스_mobile||pc : 게시판별 / 에이전트별 최근게시물 recently_comment_mobile||pc : 에이전트별 최근코멘트 (게시판 전체 기준) setting : 사이트 전체 설정

설치 후, GD 버젼 변경 방법

application/config/gd.php $config['gd_type'] = 'gd버젼';

본인의 IP를 차단했을 경우 해제 방법

기능으로 제공할 수는 없는 부분으로, 다른 IP의 PC에 들어가서 삭제하거나, DB에 접속하여 tb_client_ip_block 테이블에서 본인의 IP row를 삭제합니다.

페이지네이션 디자인 변경 방법

application/config/pagination.php http://ellislab.com/codeigniter/user-guide/libraries/pagination.html 를 참고하여, mobile / pc 각각 수정합니다.

하루한마디 설정값 변경 방법

하루한마디는 제작자 배강민이 개인적으로 사용하던걸 오픈한 부분이라서 설정 기능이 별도로 존재하지 않고 수동으로 수정해야합니다. application/controllers/plugin/onedayonememo.php //config $this->num_links['mobile'] = 2; //하단 페이징 양쪽 갯수 2이고 3페이라면 1 2 3 4 5 로 표출 $this->num_links['pc'] = 2; //하단 페이징 양쪽 갯수 2이고 3페이라면 1 2 3 4 5 로 표출 $this->per_page['mobile'] = 10; //한페이지에 보여줄 리스트수 $this->per_page['pc'] = 10; //한페이지에 보여줄 리스트수 $this->recently_limit['mobile'] = 3; //메인페이지 최근 하루한마디 표출 갯수 $this->recently_limit['pc'] = 3; //메인페이지 최근 하루한마디 표출 갯수 $this->num_links = $this->num_links[$this->viewport]; $this->per_page = $this->per_page[$this->viewport]; $this->recently_limit = $this->recently_limit[$this->viewport]; $this->max_point = 50; //선택할 수 있는 맥시멈 $this->point_gamble_success = 10; //포인트찍기 성공시 추가해줄 포인트 $this->block_string = array('개새끼', '씹새끼'); //욕필터링 $this->cut_length_recently = 0; //최근하루한마디에서 자를 글자수 (0:미사용) $this->cut_length = 0; //하루한마디에서 자를 글자수 (0:미사용)

로그인 유지 시간 변경 방법

application/config/config.php /* |-------------------------------------------------------------------------- | Session Variables |-------------------------------------------------------------------------- | | 'sess_cookie_name' = the name you want for the cookie | 'sess_expiration' = the number of SECONDS you want the session to last. | by default sessions last 7200 seconds (two hours). Set to zero for no expiration. | 'sess_expire_on_close' = Whether to cause the session to expire automatically | when the browser window is closed | 'sess_encrypt_cookie' = Whether to encrypt the cookie | 'sess_use_database' = Whether to save the session data to a database | 'sess_table_name' = The name of the session database table | 'sess_match_ip' = Whether to match the user's IP address when reading the session data | 'sess_match_useragent' = Whether to match the User Agent when reading the session data | 'sess_time_to_update' = how many seconds between CI refreshing Session Information | */ $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 3600*48; $config['sess_expire_on_close'] = FALSE; $config['sess_encrypt_cookie'] = TRUE; $config['sess_use_database'] = FALSE; $config['sess_table_name'] = 'ci_sessions'; $config['sess_match_ip'] = FALSE; $config['sess_match_useragent'] = TRUE; $config['sess_time_to_update'] = 300; sess_expiration 수정 3600*48 : 1시간 3600초 * 48시간 = 2일

네비게이션 변경 방법

네비게이션은 모든 사용자의 입맛에 맞추긴 어려워서 많이 사용되는 패턴으로 작성 되었고, 이것으로 해결되지 않는다면 페이지마다 디자인으로 기입을 해야할 수 있습니다. application/libraries/Navigation.php $home = lang('navigation_home'); $bbs = lang('navigation_bbs'); $joiner = lang('navigation_joiner'); $user_name = lang('mypage'); application/language/사용언어/tapbbs_lang.php 에서 위 부분 적절히 수정 이 부분 이외에 수정을 원하면 직접 분석하여 수정하거나 디자인으로 해결해야할 수 있습니다.

인덱스 외에 최근게시물 넣기

http://주소/bbs/recently/게시판ID 게시판 리스트롤 볼 수 있는 권한이 있는 경우 json 형태로 리턴하니, Javascript로 원하는 곳에 표출할 수 있습니다. 리턴받은 json 데이터를 풀면 다음 형태와 같습니다. stdClass Object ( [lists] => Array ( [0] => stdClass Object ( [idx] => 86 [bbs_id] => community [bbs_name] => 커뮤니티 [category_name] => 2 [name] => ADMIN[admin] [title] => 2 vs 2 [comment_count] => 0 [vote_count] => 0 [scrap_count] => 0 [timestamp] => 2014/09/02 [is_notice] => 1 [hit] => 27 [new_article_icon] => ) [1] => stdClass Object ( [idx] => 78 [bbs_id] => community [bbs_name] => 커뮤니티 [category_name] => 2 [name] => ADMIN[admin] [title] => sss [comment_count] => 0 [vote_count] => 0 [scrap_count] => 0 [timestamp] => 2013/09/22 [is_notice] => 0 [hit] => 4 [new_article_icon] => ) [2] => stdClass Object ( [idx] => 77 [bbs_id] => community [bbs_name] => 커뮤니티 [category_name] => 2 [name] => ADMIN[admin] [title] => dfdf [comment_count] => 0 [vote_count] => 0 [scrap_count] => 0 [timestamp] => 2013/09/15 [is_notice] => 0 [hit] => 3 [new_article_icon] => ) ) )

로그인폼을 페이지 일부분에 넣기

원하는 곳(tpl)에 {#outlogin} 를 적절히 넣으면 되고, 아래 두 파일이 아웃로그인의 로그인 전/후의 디자인 입니다. front_end/themes/mobile||pc/스킨명/_template/user/outlogin_after_login.tpl front_end/themes/mobile||pc/스킨명/_template/user/outlogin_before_login.tpl

게시판 상단/하단 등에 특정 내용 넣기

현재, PC버젼만 제공합니다. 어드민 > 게시판관리 > 하단 기타 설정 > 기타1 / 기타2 에 적절한 내용을 넣습니다. 각각 기타1 : {BBS_SETTING_bbs_etc1} 기타2 : {BBS_SETTING_bbs_etc2} 라는 변수로 패치되어 게시판 관련 디자인 파일 아무곳에나 추가하면 해당 내용이 노출됩니다.

갤러리, 웹진 게시판 리스트에 나오는 이미지 기준은?

#01. 일반 파일 업로드로 올린 이미지 (WYSIWYG으로 등록한 이미지 제외) #02. 여러 이미지를 올렸을 경우, 제일 먼저 등록한 이미지 #03. 어드민 설정에서 첨부이미지/썸네일 관련 설정에 따라 컨버팅된 이미지

그룹아이콘 사용 방법

#01. 관리자페이지 > 회원 > 그룹관리 #02. 그룹아이콘 경로를 넣고 우측의 수정을 누릅니다. #03. 디자인에서 적당한 위치에 {GROUP_ICON[그룹idx]} 를 넣으면 됩니다. #04. 만약, 로그인한 회원의 그룹아이콘을 넣으려면 {GROUP_ICON[USER_INFO_group_idx]} 라고 하면 됩니다.

미구현 항목

#01. tb_users_block_history (회워차단내역) 테이블을 존재하지만, 아직 구현된 항목은 없습니다. #02. tb_bbs_file 테이블에 sequence 필드로 첨부파일 순서를 조작하려고 준비했지만, 아직 구현하지 않았습니다. #03. 사이트 설정에 자동 새로고침 시간이 설정은 가능하지만, 관련하여 구현된 항목은 없습니다. #04. 회원별 레벨을 수정할 수 있지만, 관련하여 구현된 내역은 없습니다. 단, {USER_INFO_level} 값으로 View단으로 어싸인되므로 적절히 사용하실 수는 있습니다.