Wordpress:如何为自定义帖子类型设置用户角色

时间:2014-05-27 10:11:46

标签: php wordpress plugins user-roles

我正在使用WordPress为公司制作系统。要解决此问题,我要制作新的自定义帖子类型EMPLOYEE,我需要2个相应的用户AGENTCUSTOMER: 其他 The的{​​{1}}代理user can create and edit his own员工, but not edit the EMPLOYEE(s)

所有AGENT(s)和所有公众都可以查看和评论EMPLOYEE帖子, 这也意味着AGENTs, CUSTOMERs用户只能查看所有CUSTOMER个帖子。 EMPLOYEE用户需要与普通公众区分开来,因为一旦他们雇用CUSTOMER,系统就需要将其与EMPLOYEE相关联,因此需要EMPLOYEE成为已登录的用户。

最后,CUSTOMERAGENT用户都可以创建/编辑自己的香草WordPress用户个人资料,并使用他们的用户名/密码组合登录。

我如何执行此安排?关于用户和功能的在线文档让我拉扯我的头发并绕圈跑来跑去。到目前为止,这是我的自定义帖子类型注册,我目前正在设置此帖子类型的其他信息的元框:

CUSTOMER

和我的角色: -

/*** Register Custom Post Type " Company " ***/
function out_clients() {
$labels = array(
    'name'                => _x( 'AGENT', 'Post Type General Name' ),
    'singular_name'       => _x( 'AGENT', 'Post Type Singular Name' ),
    'menu_name'           => __( 'AGENT'  ),
    'parent_item_colon'   => __( 'AGENT' ),
    'all_items'           => __( 'ALL AGENT' ),
    'view_item'           => __( 'VIEW'  ),
    'add_new_item'        => __( 'ADD'  ),
    'add_new'             => __( 'ADD'  ),
    'edit_item'           => __( 'EDIT'  ),
    'update_item'         => __( 'EDIT'  ),
    'search_items'        => __( 'SEARCH'  ),
    'not_found'           => __( 'NOT FOUND'  ),
    'not_found_in_trash'  => __( 'NO IN TRASH'  ),
);
$args = array(
    'labels'              => $labels,
    'supports'            => array(  'title' ),
    'taxonomies'          => array(),
    'hierarchical'        => false,
    'public'              => true,
    'show_ui'             => true,
    'show_in_menu'        => true,
    'show_in_nav_menus'   => true,
    'show_in_admin_bar'   => true,
    'menu_position'       => 5,
    'menu_icon' => get_stylesheet_directory_uri() . '/images/cli_icon.png',
    'can_export'          => true,
    'has_archive'         => true,
    'exclude_from_search' => false,
    'publicly_queryable'  => true,
    'capability_type'     => 'page',
);
register_post_type( 'out_clients', $args );
}
/*** Hook into the 'init' action **/
add_action( 'init', 'out_clients', 0 );

帮助。提前谢谢。

0 个答案:

没有答案