메뉴 설정 회원 레벨별로 다르게 출력하기 > 그누보드 팁

본문 바로가기
전체검색

아이디비번찾기

그누보드 팁

그누보드 영카트 초보 사용자를 위한 기본 매뉴얼, 스킨 제작 기초강좌를 공유합니다.

메뉴 설정 회원 레벨별로 다르게 출력하기

페이지 정보

작성자 관리자 작성일18-04-04 12:21 조회339회

본문

그누보드 팁

관리자 페이지 > 환경설정 > 메뉴 설정을 사용할 때 회원 레벨에 따라 다르게 출력하는 방법입니다.

예를 들어 권한 설정을 2로 입력하면 비회원은 메뉴가 출력되지 않습니다.

10으로 입력하면 관리자만 출력됩니다.



1. DB 수정


g5_menu 테이블에 me_level 필드 추가


40b149a18d8dbd61f03065b8963a4860_1522812990_1633.gif
 

필드 추가를 어떻게 하는지 모른다면

adm/menu_list.php 파일 상단쯤에


include_once('./_common.php');

여기 바로 밑에 아래 내용 추가


sql_query(" ALTER TABLE `{$g5['menu_table']}` ADD `me_level` tinyint(4) NOT NULL DEFAULT '0' AFTER `me_mobile_use` ", true);


위 코드 추가 후 관리자 페이지 > 환경설정 > 메뉴 설정 페이지 접속 후 추가했던 코드는 바로 삭제

이미 접속해 있다면 브라우저 새로 고침 한번 실행

(메뉴 설정 페이지를 접속하면 자동으로 실행돼서 필드가 추가됩니다.)

메뉴 설정 페이지 접속 후 추가했던 코드를 삭제하지 않으면 페이지 에러가 발생하니 반드시 삭제해야 합니다.



2. adm/menu_form.php 파일 수정


순서 설정 부분 아래에 다음 내용 추가


list += "<td class=\"td_numsmall\">";
list += "<label for=\"me_level_"+ms+"\"  class=\"sound_only\">권한<strong class=\"sound_only\"> 필수</strong></label>";
list += "<input type=\"text\" name=\"me_level[]\" value=\"0\" id=\"me_level_"+ms+"\" required class=\"required frm_input\" size=\"5\">";
list += "</td>";


위치는 아래 이미지 참고


c68b74b36a7bbd38b5097d4d8222b055_1522820350_4238.gif
 


3. adm/menu_list.php 파일 수정


3-1.

$colspan = 7; 부분을 $colspan = 8; 로 수정


3-2.

tr 부분 순서 아래에 권한 추가


<tr>
    <th scope="col">메뉴</th>
    <th scope="col">링크</th>
    <th scope="col">새창</th>
    <th scope="col">순서</th>
    <th scope="col">권한</th>
    <th scope="col">PC사용</th>
    <th scope="col">모바일사용</th>
    <th scope="col">관리</th>
</tr>


3-3.

td 부분 순서 아래에 권한 추가


<td class="td_num">
    <label for="me_level_<?php echo $i; ?>" class="sound_only">권한</label>
    <input type="text" name="me_level[]" value="<?php echo $row['me_level'] ?>" id="me_level_<?php echo $i; ?>" class="tbl_input" size="5">
</td>



4. adm/menu_list_update.php 파일 수정


메뉴 등록 쿼리에 권한 추가


me_level        = '{$_POST['me_level'][$i]}',


위치는 아래 이미지 참고


40b149a18d8dbd61f03065b8963a4860_1522812640_1502.gif 



5. head.php 파일 수정


메뉴 출력 부분 쿼리에 추가


and me_level <= '{$member['mb_level']}'


모바일은 mobile/head.php

테마 사용 중이면 테마 폴더에 있는 head.php


위치는 아래 이미지 참고 (두 군데 모두 추가)


40b149a18d8dbd61f03065b8963a4860_1522812958_1456.gif 

hup님의 댓글

hup

위 내용을 따라 정확히(3번 이상 확인 함)수정하였으나...

지정한 레벨 이하에서 메뉴가 출력되지 않아야 하겠으나...
 
여전히 모든 레벨의 회원에게 출력이 되는군요.

관련 링크입니다.

http://study24.kr/

test03 / test03 입니다.

관리자님의 댓글

관리자 댓글의 댓글

이렇게 봐서는 확인할 수 없습니다. 저도 여러번 테스트했었고 방금 또 해봤는데 문제없이 잘 됩니다.
수정을 다른 파일을 하신거 아닌가요. 테마 사용 중이면 테마 폴더 head.php 파일을 수정해야 합니다.
db 필드 생성과 수정 부분들 다시 체크하시라고 말씀드릴 수밖에 없네요.

로그인 후 댓글을 남겨주세요.
그누보드 팁 목록
번호 제목
공지 그누보드 팁 자료실 공지사항
109 네이버 구글 검색 서브 링크 새글
108 회원 가입시 관리자에게 문자 발송하기
107 메인 메뉴 3차까지 추가하기
106 모바일 브라우저에서 링크 터치 하이라이트 제거 (링크 클릭 영역)
105 그누보드 5.3 기본 레이아웃 전체 가로 사이즈 변경
104 index 페이지 최신글 특정 게시판 제외하기
103 그누보드 5.2 버전과 5.3 버전 차이점
102 특정 아이피만 관리자 페이지 접근을 허용하는 방법
101 등록된 글이 없거나 페이지당 목록수보다 적어도 페이징 번호 출력하기
100 회원 가입시 닉네임 중복으로 입력할 수 있게 변경하기
99 웹호스팅 회사별 phpmyadmin 접속 링크
98 게시판 wr_id 값 초기화
97 비회원도 추천, 비추천 가능하게
96 그누보드 5.3 기본 레이아웃에서 우측 aside 영역 삭제하기
95 투표 참가 인원 닉네임으로 출력
94 자동등록방지(kcaptcha) 캽챠 음성 안내 삭제하기 - 그누보드 5.3
93 스마트 에디터 글쓰기 textarea 높이 수정하기
92 썸네일 이미지 출력할 때 여백 없이 사용하기
91 문자열 글자 자르기 cut_str 함수
90 로그인 로그아웃했을 때 특정 페이지로 이동
열람중 메뉴 설정 회원 레벨별로 다르게 출력하기 댓글2
88 관리자 페이지 메뉴 추가하는 방법
87 게시판 조회수 새로고침 할 때마다 증가시키는 방법
86 인기 검색어 DB에 저장하지 않기
게시물 검색


그누스터디는 그누보드, 영카트 초보 사용자를 위한 정보를 공유합니다.

Copyright © GNUSTUDY. All rights reserved.
상단으로