BOARD

팁·활용

그누보드 특정 게시판에서 관리자 외 사용자 글 삭제 권한 제한하기

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 5회 작성일 26-09-13 23:04

본문

적용 목적과 활용 상황

특정 게시판에서 일반 사용자가 글을 등록한 뒤 임의로 삭제하는 것을 방지하고자 할 때 유용합니다. 예를 들어 자유게시판(free) 등에서 관리자만 글을 삭제할 수 있도록 제어할 수 있으며, 관리자 외 사용자의 임의 삭제를 차단해 게시물 운영의 안정성을 높일 수 있습니다.

코드 수정 전 백업 및 주의사항

스킨 파일을 수정하기 전에는 반드시 기존 파일을 백업해야 하며, free 부분을 원하는 게시판 ID로 올바르게 입력했는지 확인해야 합니다.

view.skin.php 파일 수정 방법

게시판 스킨 폴더 내의 view.skin.php 파일을 편집합니다. 파일 상단의 접근 제어 코드 아래에 특정 게시판 ID와 관리자 여부를 확인하는 조건을 추가하여 삭제 링크 변수를 비활성화합니다.

if ($bo_table == 'free' && !$is_admin) {
    $delete_href = false;
}

이 설정을 적용하면 상세 페이지 화면에서 관리자가 아닌 경우 삭제 버튼이 노출되지 않습니다.

delete.head.skin.php 파일 생성 방법

화면에서 버튼을 숨기는 것뿐만 아니라 직접 URL 접근 등을 통해 삭제를 시도하는 상황을 확실하게 막기 위해 게시판 스킨 폴더에 delete.head.skin.php 파일을 새로 생성합니다.

<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

if ($bo_table == 'free' && !$is_admin) {
    alert("삭제 권한이 없습니다.");
}
?>

해당 코드를 추가하면 관리자가 아닌 사용자가 삭제를 시도할 경우 경고 문구가 출력되면서 차단됩니다.

적용 후 확인 방법

적용을 마친 뒤에는 일반 사용자 계정으로 대상 게시판에 접속하여 상세 페이지에서 삭제 버튼이 노출되지 않는지 확인하고, 직접 삭제 URL을 호출했을 때 차단 안내 문구가 정상적으로 출력되는지 점검합니다.

함께 보면 좋은 글

댓글목록

등록된 댓글이 없습니다.