견적문의하기 게시판이 있는데 회원들만 글을 쓸 수 있도록 하였는데
회원들이 글을 쓰면 비밀글 체크를 안해도 자동으로 모두 비밀글로 등록되게 할 수 있을까요?
다른방법들이 많겠지만...제가 아는데로 설명 드릴게요.
1.
wp_kboard_board_content Table 의 secret 의 컬럼 구조의 기본값을 사용자 정의로 하시고 true 로 하시면
비밀글 체크 여부 상관없이 잠기게 됩니다.
2.
혹은.....테마의 Functions.php에
제일 끝에
add_action('kboard_document_insert', 'kboard_secret_edit',10,2);
이벤트 추가후...
function 'kboard_secret_edit($content_uid,$board_id) {
if ($board_id == "1") { // 게시판 보드 아이디
$mysql_host = "localhost"; // 호스트 주소
$mysql_user = "id"; // 호스트 데이터베이스 아이디
$mysql_password = "pw"; // 호스트 데이터베이스 비밀번호
$mysql_db = "wp"; // 워드프레스 데이터베이스
mysql_connect($mysql_host,$mysql_user,$mysql_password);
mysql_select_db($mysql_db);
$query = "UPDATE wp_kboard_board_content SET secret = 'true' WHERE uid = '$content_uid'";
$q=mysql_query($query);
}
게시판에 글쓰자 마자 이벤트가 발생되서 글번호/보드번호가 통보됩니다.
secret 를 true 로 업데이트 해주면 될듯합니다.
비밀글 부분을 hidden으로 설정하고 checked를 추가해주면 됩니다.
또는 functions.php 파일에
add_filter('kboard_insert_data', 'kboard_insert_data_secret',10,2);
add_filter('kboard_update_data', 'kboard_insert_data_secret',10,2);
필터 이벤트 추가 후 (kboard_insert_data, kboard_update_data 필터 모두)
아래 실행 함수도 추가해주세요.
function kboard_insert_data_secret($data, $board_id){
if ($board_id == "1"){ // 게시판 보드 아이디 체크
$data['secret'] = 'true';
}
return $data;
}