[해결] 시즌4 관리자페이지 메뉴추가 문의

profile_image
레아엘 61.♡.92.2
2024-07-17 09:30 3,489 3
총 채택 포인트
100 포인트
채택된 회원에게 주는 후원 포인트
50 포인트
채택 후 작성자(레아엘) 회수 포인트
50 포인트

본문

오늘도 돌아왔습니다. 플러그인을 제작하는 도중에 관리자페이지/메뉴추가 부분이 기존 그누보드5랑 많이 다르더라구요, 검색을 해보니 시즌3때 팁게시판에 적혀있는걸 발견했습니다. 적힌대로 진행해보니 시즌3랑 뭔가 오묘하게 다른걸 발견했습니다
그래서 문의 드립니다.
기준 : 이윰빌더에 작동되는 플러그인의 관리자페이지 설정표시 수정 해야하는 파일 1\. adm/eyoom\_adm/core/'플러그인 폴더' 2\. adm/eyoom\_adm/inc/admin\.menu\.extend\.php 3\. adm/eyoom\_adm/theme/eba\_basic/skin/ '플러그인 폴더' 1, 3에 플러그인 설정파일을 넣는건데, 코드가 너무 분리되어있습니다. core에는 설정의 최상단 php코드만 있고, extend에는 관리자 추가메뉴 삽입코드 skin에는 html관련 코드만 있더라구요 관리자페이지 메뉴추가 부분 강좌가 필요합니다
profile_image
레아엘 회원등급 : 지상계 / Level 9
포인트 500
경험치 7,441
[레벨 9] - 진행률 14%
가입일
2015-02-03 22:53:55
서명
미입력
자기소개
미입력

댓글목록3

NPIO님의 댓글

profile_image
NPIO 220.♡.126.82
2024-07-17 14:14
레아엘님 안녕하세요.

아주 좋은 질문인 것 같습니다.
프로젝트를 진행하거나 기능을 추가하다보면 관리자 모드에 대메뉴를 추가 하거나 서브메뉴를 추가할 일들이 생기기 마련이죠.
말씀처럼 이윰빌더 시즌4에서는 관리자모드에 다중관리자모드 및 즐겨찾기 메뉴 기능을 추가하면서 관리자메뉴 생성하는 방법이 다소 차이가 있습니다.
이곳 댓글에 방식을 알려드리기에는 한계가 있을 것 같습니다.
향후 메뉴얼을 작성하여 제공해 드리도록 하겠습니다.

좋은 의견 감사드립니다.
오늘도 멋진 하루 되세요.

NPIO님의 댓글

채택
profile_image
NPIO 220.♡.126.82
2024-07-17 16:30
이윰빌더 관리자모드 메뉴생성 및 관리

01. 이윰빌더의 관리자모드 URL 체계의 이해
---
URL 형식 : http(s)://YourDomain/adm/?dir=dirname&pid=pidname
---

$_GET['dir'] : 관리자모드 1차메뉴 및 폴더명
$_GET['pid'] : $dir 하위에 위치하는 페이지 아이디

이윰빌더 관리자모드도 프로그램 영역을 담당하는 core 부분과 디자인 영역을 담당하는 theme/skin/ 영역으로 나누어져 있습니다.
이 부분을 처리해 주는 파일의 위치는 아래와 같습니다.

/adm/eyoom_admin/inc/admin.sub.php

위 파일 16번째 라인에서 core 파일의 경로를 정의하여 19번째 라인에서 프로그램 영역을 include 합니다.
또한, 38번째 마지막 라인에서 사용중인 테마의 스킨파일을 include 하고 있습니다.


02. [수강신청관리] 메뉴를 추가하는 작업을 예를 들어 보겠습니다.
1) 수강신청관리의 dir : apply
2) 신청자리스트 pid : apply_list
3-1) /adm/eyoom_admin/inc/admin.menu.php 파일 직접 수정

$_dirname = array(
    '100' => 'config',
    '200' => 'member',
    '300' => 'board',
    '330' => 'seo',
    '350' => 'somoim',
    '400' => 'shop',
    '500' => 'shopetc',
    '600' => 'apply', // 수강신청관리 dir명 설정
    '700' => '',
    '900' => 'sms',
    '999' => 'theme',
);

$dir_icon = array(
    'config'    => 'fa-sliders-h',
    'member'    => 'fa-user',
    'board'    => 'fa-list-alt',
    'seo'      => 'fa-search',
    'somoim'    => 'fa-users',
    'shop'      => 'fa-shopping-cart',
    'shopetc'  => 'fa-chart-pie',
    'apply'    => 'fa-chalkboard-teacher', // 수강신청관리 아이콘을 위해 폰트어썸 클래스명 입력
    'sms'      => 'fa-mobile',
    'theme'    => 'fa-puzzle-piece',
);

3-2) /adm/eyoom_admin/inc/admin.menu.extend.php 파일 수정
/**
 * 추가메뉴 디렉토리
 */
$cate_num = '600';
$_dirname[$cate_num] = 'apply';

/**
 * 추가메뉴 폰트어썸 아이콘
 */
$dir_icon['apply'] = 'fa-chalkboard-teacher';

위 3-1) 또는 3-2) 2가지 방법 중 한가지만 적용해 주시면 됩니다.

4) /adm/admin.menu600.php 파일 생성
<?php
$menu['menu600'] = array (
    array('600000', '수강신청관리', ''.G5_ADMIN_URL.'/cate_list.php', 'category'),
    array('600100', '카테고리관리', ''.G5_ADMIN_URL.'/cate_list.php', 'cate_list'),
    array('600200', '교육관리', ''.G5_ADMIN_URL.'/lecture_list.php', 'lecture_list'),
    array('600300', '신청자관리', ''.G5_ADMIN_URL.'/apply_list.php', 'apply_list'),
);

5) 다중관리자 설정을 위해 /adm/eyoom_admin/theme/eba_basic/admin.menu.theme.php 파일에 적당한 위치에 아래 소스 추가
/**
 * menu600 : 수강신청관리
 */
if ($member['mb_id'] == $config['cf_admin'] || in_array('apply', $mg_auth)) {
    if (isset($menu['menu600'])) {
        unset($menu['menu600']);
        $menu['menu600'] = array(
            array('600000', '수강신청관리', ''.G5_ADMIN_URL.'/cate_list.php', 'category'),
            array('600100', '카테고리관리', ''.G5_ADMIN_URL.'/cate_list.php', 'cate_list'),
            array('600200', '교육관리', ''.G5_ADMIN_URL.'/lecture_list.php', 'lecture_list'),
            array('600300', '신청자관리', ''.G5_ADMIN_URL.'/apply_list.php', 'apply_list'),
        );
    }
} else {
    unset($menu['menu600']);
}

6) 1차메뉴 core 폴더 및 theme/skin 폴더 생성
- core 폴더만들기 : /adm/eyoom_admin/core/apply/
- skin 폴더만들기 : /adm/eyoom_admin/theme/eba_basic/skin/apply/

7) 수강신청관리 > 카테고리관리 페이지 제작
- /adm/eyoom_admin/core/apply/cate_list.php 파일 생성
- /adm/eyoom_admin/theme/eba_basic/skin/apply/cate_list.html.php 파일 생성
- /adm/eyoom_admin/theme/eba_basic/skin/apply/cate_form.html.php 파일 생성

8) 수강신청관리 > 교육관리 페이지 제작
- /adm/eyoom_admin/core/apply/lecture_list.php 파일 생성
- /adm/eyoom_admin/theme/eba_basic/skin/apply/lecture_list.html.php 파일 생성
- /adm/eyoom_admin/theme/eba_basic/skin/apply/lecture_form.html.php 파일 생성

9) 수강신청관리 > 신청자관리 페이지 제작
- /adm/eyoom_admin/core/apply/apply_list.php 파일 생성
- /adm/eyoom_admin/theme/eba_basic/skin/apply/apply_list.html.php 파일 생성
- /adm/eyoom_admin/theme/eba_basic/skin/apply/apply_form.html.php 파일 생성

위 페이지 제작은 이윰빌더에서 제공하고 있는 다른 메뉴 [회원관리] 또는 [게시판관리] 등 여러 메뉴를 참고하여 작업해 주시면 됩니다.

감사합니다.

레아엘님의 댓글의 댓글

profile_image
레아엘 61.♡.92.2
2024-07-18 11:16
확인했습니다!
정상적으로 작동됩니다. 이제 디자인적으로 손보면 될듯 합니다.