안녕하세요.
워드프레스 게시판 KBoard(케이보드) 사용중입니다.
케이보드 게시판 이용에 궁금한 점이 있어 문의드립니다.
입력필드를 추가하여 핸드폰 번호를 입력할 수 있게 할 예정입니다.
그런데 이미 이전글 중에 입력된 핸드폰 번호가 있을시 글 게시를 할 수 없도록 하고 싶은데요.
즉, 하나의 핸드폰 번호로는 하나의 글만 게시 가능하도록요.
작업이 가능하다면, 어떤 방법으로 가능할지요?
감사합니다.
답변 감사드립니다!
적용해보고 정상 작동 되는지 답변 남기겠습니다.
안녕하세요~^^
원하시는 답변은 아니지만 참고 삼아 말씀드립니다.
KBoard 게시판 5.7 버전 이상으로 업데이를 하시면 최대 게시글 작성 제한 설정을 사용하실 수 있습니다.
이미지 : https://imgur.com/eEIAF2q
해당 설정은 게시판에서 동일 사용자가 작성 가능한 게시글 수를 제한합니다.
다만 로그인 사용자에게만 적용되며 쓰기권한을 로그인 사용자 이상으로 해주세요.
비회원의 경우 적용되지 않기 때문의 주의가 필요합니다.
고맙습니다.
안녕하세요~^^
KBoard 플러그인에 입력 필드를 추가하고
해당 입력 필드에 이미 등록된 값이 있으면 더 이상 등록되지 않게 하고 싶으신 건지요?
아래의 코드를 활용해보시겠어요?
add_action('kboard_pre_document_insert', 'kboard_pre_document_insert_20200706', 10, 4);
function kboard_pre_document_insert_20200706($content_uid, $board_id, $content, $board){
if($board_id == '1'){ // 실제 게시판 id로 적용해주세요.
$meta_key = 'phone'; // 실제 입력 필드 메타키로 적용해보세요.
$phone = isset($_POST["kboard_option_$meta_key"]) ? sanitize_text_field($_POST["kboard_option_$meta_key"]) : '';
if($phone){
$list = new KBContentList($board_id);
$list->addSearchOption($meta_key, $phone);
$list->getList();
if($list->total){
echo "<script>alert('이미 등록된 번호입니다.')</script>";
echo "<script>window.history.back();</script>";
exit;
}
}
}
}
위의 코드에서 $board_id == '1' 부분은 실제 게시판 id로 적용해주세요
$meta_key = 'phone' 부분은 실제 입력 필드의 메타키로 적용해보시겠어요?
고맙습니다.