RSS

관리자 메뉴에 플러그인 추가하기

14 2월

플러그인의 관리자 페이지가 반드시 필요한 건 아니다. 하지만, 메타 데이터가 있을 때는 만드는 게 좋다. 그렇지 아니면 데이터베이스를 직접 갱신해야 하는 경우도 생길 수 있다. 상당히 귀찮다.

관리자 페이지 등록을 위해서는 생성한 플러그인을 워드프레스에 등록하고 활성화하는 작업이 필요하다. 플러그인을 등록하면 아래와 같이 해당 목록이 나타난다. 이를 활성화하면 사이트에서 바로 사용할 수 있다. 여기서는 직접 만든 Howdy Notices 플러그인 “활성화” 메뉴를 이용한다.

[플러그인 관리 페이지] 

p1

HowdyNotices 메뉴가 왼쪽에 추가되었다. 이 플러그인 관련 포스트 및 메타 테이터 설정이 가능하다.

[관리자 페이지에 플러그인 추가]p2

소스코드를 보면 관리 페이지 등록을 위해서는 register_post_type()과 이를 호출할 액션훅이 필요하다는 걸 알 수 있다.

// 플러그인이 활성화 될 때 플러그인을 등록하는 함수를 호출한다.
add_action('init', 'Howdy_create_notices');

Howdy_create_notices()에서 관리자 화면에 보일 메뉴명을 배열로 등록하고 register_post_type()을 호출하면 모든 준비가 끝난다. 나머지 기반 구조(포스트 등록 화면, 변경, 삭제, 메타 데이터 관련 편집화면 …)는 워드프레스에서 기본으로 제공한다. 기존 템플릿 페이지를 호출하기 때문에 별도 등록용 페이지를 만들 필요가 없다.

function Howdy_create_notices() {
    $labels = array(
     'name' => _x( 'HowdyNotices', 'post type general name' ), // Tip: _x('') is used for localization
    'singular_name' => _x( 'HowdyNotice', 'post type singular name' ),
    'add_new' => _x( 'Add New', 'Notice' ),
    'add_new_item' => __( 'Add New Notice' ),
    'edit_item' => __( 'Edit Notice' ),
    'new_item' => __( 'New Notice' ),
    'view_item' => __( 'View Notice' ),
    'search_items' => __( 'Search Notices' ),
    'not_found' => __( 'No Notices found' ),
    'not_found_in_trash' => __( 'No Notices found in Trash' ),
    'parent_item_colon' => ''
    );
    $notice_args = array(
    'labels' => $labels,
    'singular_label' => __('Notice', 'simple-notices'),
    'public' => true,
    'show_ui' => true,
    'capability_type' => 'post',
    'hierarchical' => false,
    'rewrite' => false,
    'supports' => array('title', 'editor'),
    );
    register_post_type('howdynotices', $notice_args);
}

 

 

[Howdy Notices 관리자 페이지]
p3

Advertisements
 
 

태그: , ,

관리자 메뉴에 플러그인 추가하기”에 대한 1개의 응답

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

 
%d 블로거가 이것을 좋아합니다: