bojaghi / admin-menus
WP admin menu setup wrapper
1.0.3
2025-07-18 10:45 UTC
Requires
- php: >=8.0
- bojaghi/contract: ^1.1
- bojaghi/helper: ^1.2
Requires (Dev)
- bojaghi/dictionary: ^1.0
- bojaghi/wp-tests: ^1.1
- phpunit/phpunit: ^9
- yoast/phpunit-polyfills: ^4.0
README
워드프레스 플러그인, 테마에서 메뉴를 쉽게 생성하기 위한 보자기 패키지
설치
composer require bojagi/admin-menus
사용법
아래처럼 설정을 배열로 입력하거나
use Bojaghi\AdminMenues\AdminMenu; new AdminMenu([ /* ... setup ... */]);
설정을 리턴하는 파일 경로를 입력하세요.
new AdminMenu('/path/to/setup/file');
AdminMenu 클래스는 'admin_menu' 액션의 콜백에서 인스턴스화 하세요. 즉 아래와 같은 형태의 코드가 됩니다.
add_action( 'admin_menu', function () { new AdminMenu( /* ... */ ); } );
설정
설정의 배열은 다음의 예와 같습니다.
$args = [ 'add_menu' => [], 'add_submenu' => [], 'remove_menu' => [], 'remove_submenu' => [], ]; - add_menu: 메뉴를 추가합니다. - add_submenu: 서브메뉴를 추가합니다. - remove_menu: 메뉴를 제거합니다. - remove_submenu: 서브메뉴를 제거합니다.
각 키 별 항목의 구조는 다음과 같습니다.
add_menu
$defaults = [ 'page_title' => '', // Required 'menu_title' => '', // Required 'capability' => '', // Required 'menu_slug' => '', // Required 'callback' => '', // Optional, but almost required. 'icon_url' => '', // Optional 'position' => null, // Optional ];
add_submenu
$defaults = [ 'parent_slug' => '', // Required 'page_title' => '', // Required 'menu_title' => '', // Required 'capability' => '', // Required 'menu_slug' => '', // Required 'callback' => '', // Optional, but almost required. 'position' => null, // Optional ];
remove_menu
특별한 구조가 아닙니다. 'remove_menu'는 menu_slug 문자열의 순차배열입니다.
remove_submenu
$defaults = [ 'menu_slug' => '', 'submenu_slug' => '', ];