그누보드 관리자만 특정 분류 선택 가능하게 설정하고 일반 회원 숨기기
페이지 정보

본문
그누보드 게시판에서 특정 분류는 관리자만 선택하게 제한하고 일반 유저에게는 노출되지 않도록 숨기는 설정 방법을 안내합니다.
게시판 글쓰기에서 일반 회원에게 특정 분류 숨기기
그누보드 게시판에서 일반 회원이 글을 작성할 때 특정 분류 항목이 보이지 않도록 하려면 write.skin.php 파일을 수정해야 합니다.
수정 방법
write.skin.php 파일 하단의 스크립트 영역에 관리자 여부를 체크하는 !is_admin 조건문을 추가하고, jQuery를 사용하여 특정 value를 가진 option 태그를 제거하는 코드를 삽입합니다.
<?php if (!$is_admin) {?>
<script>
$(function() {
$("#ca_name").find("option").each(function() {
if(this.value == "분류명") {
$(this).remove();
}
});
});
</script>
<?php }?>
- 주의 사항: 코드 내
"분류명"부분은 실제로 숨기고자 하는 대상 분류 이름으로 변경해야 합니다.
적용 후 확인 방법
- 관리자 계정: 글쓰기 페이지에 접근하여 해당 분류가 정상적으로 노출되는지 확인합니다.
- 일반 회원 계정: 글쓰기 페이지에 접근하여 설정한 특정 분류 항목이 목록에서 보이지 않는지 확인합니다.
글쓰기 페이지 분류 설정 및 기본값 지정 방법
그누보드 게시판에서 분류 선택 항목을 제어하거나 기본값을 지정하려면 게시판 스킨 파일인 write.skin.php를 수정해야 합니다.
1. 특정 분류를 일반 회원에게 숨기는 방법
관리자만 특정 분류를 선택할 수 있게 하려면, write.skin.php 파일 하단 스크립트 영역에 관리자 여부(!$is_admin)를 확인하여 해당 option을 제거하는 jQuery 코드를 추가합니다.
<?php if (!$is_admin) {?>
<script>
$(function() {
$("#ca_name").find("option").each(function() {
if(this.value == "분류명") {
$(this).remove();
}
});
});
</script>
<?php }?>
"분류명"을 숨기고자 하는 실제 분류 이름으로 변경하십시오.
2. 특정 분류를 기본값으로 자동 선택하는 방법
글쓰기 페이지 진입 시 특정 분류가 자동으로 선택되게 하려면 write.skin.php 상단(if (!defined('_GNUBOARD_')) exit; 아래)에 다음 코드를 추가합니다.
<?php
if ($bo_table == '게시판ID' && $w == '' && $is_category) {
$category_option = get_category_option($bo_table, "분류명");
}
?>
게시판ID와분류명을 실제 환경에 맞게 수정하십시오.
3. '분류를 선택하세요' 옵션 제거
사용자가 분류를 강제로 선택하지 않고 첫 번째 분류가 기본으로 선택되게 하려면, write.skin.php 내의 아래 코드를 삭제하십시오.
<option value="">분류를 선택하세요</option>
주의사항: 분류가 필수 입력 항목인 경우, 일반 회원에게 선택지를 숨기면 글 등록 시 유효성 검사 오류가 발생할 수 있습니다. 이 경우 자동 선택 기능을 함께 적용하여 값이 전달되도록 구성해야 합니다.
상황별 분류 제어 가이드
| 내 상황 | 우선할 판단 | 다음 행동 |
|---|---|---|
| 일반 회원에게 특정 분류(예: 공지 등)를 노출하지 않고 관리자만 선택하게 하려는 경우 | write.skin.php 파일 하단에 !is_admin 조건과 jQuery를 활용한 옵션 제거 코드 적용 | 스크립트 내 대상 분류명을 실제 분류명으로 수정 후 일반 회원 계정에서 노출 여부 확인 |
| 신규 글 작성 시 특정 분류가 기본으로 선택되도록 자동 지정하려는 경우 | write.skin.php 상단에 게시판 ID와 get_category_option 함수를 포함한 조건문 추가 | 지정하려는 게시판 ID와 분류명을 입력하고 신규 글쓰기 페이지에서 기본 선택 상태 확인 |
| 필수 입력 항목인 분류에서 '분류를 선택하세요' 안내 문구를 없애고 첫 번째 분류를 기본 지정하려는 경우 | write.skin.php 내의 기본 선택 안내 <option value="">분류를 선택하세요</option> 태그 삭제 | 태그 삭제 후 일반 및 관리자 계정에서 글 등록 시 유효성 검사 통과 여부 점검 |
실전 FAQ
Q. 일반 회원에게 특정 분류를 숨겼더니 글 등록 시 '분류를 선택하세요' 에러나 필수 입력 경고가 뜹니다. 어떻게 해결하나요?
- 실행 중 막히는 지점: 그누보드 기본 글쓰기 폼에서 분류는 필수 입력(
required)으로 지정되어 있어, 일반 회원이 선택할 수 있는 옵션이 아예 사라지거나 빈 값으로 전송되면 유효성 검사에 걸리게 됩니다. - 예외 및 대안: 단순히 jQuery로 옵션을 제거하는 방식은 클라이언트단에서만 숨겨지므로 서버 측 검증에서 문제가 될 수 있습니다. 이 경우 특정 게시판에 유입될 때 서버 측에서
get_category_option을 활용해 기본값을 자동 지정하거나, 관리자가 아닌 경우에 대한 기본 분류 값 할당 로직을 함께 검토해야 합니다.
함께 보면 좋은 글
- 그누보드 회원 정보 수정 페이지에서 이름(mbname) 필드 수정 가능하게 변경하기
- 그누보드 특정 게시판 내 카테고리(분류)별 PC 및 모바일 스킨 다르게 적용하는 방법
- 그누보드 특정 게시판 지정 회원 글쓰기 권한 제한 방법
참고자료
기타 참고자료
- 이전글그누보드 댓글 답변 글 들여쓰기 여백 조정 방법 26.10.25
- 다음글그누보드 소셜 회원가입 시 여분 필드를 이용해 추가 정보를 입력받고 저장하는 방법 26.10.24
댓글목록
등록된 댓글이 없습니다.