我在开发网站上使用此代码来创建自定义帖子类型。
当我将它复制到live site functions.php文件时,它会停止工作吗?具体来说,它不会显示在仪表板左侧的管理菜单中。我做错了什么?
add_action( 'init', 'register_cpt_manufacturer' );
function register_cpt_manufacturer() {
$labels = array(
'name' => _x( 'Manufacturers', 'manufacturer' ),
'singular_name' => _x( 'Manufacturer', 'manufacturer' ),
'add_new' => _x( 'Add New', 'manufacturer' ),
'add_new_item' => _x( 'Add New Manufacturer', 'manufacturer' ),
'edit_item' => _x( 'Edit Manufacturer', 'manufacturer' ),
'new_item' => _x( 'New Manufacturer', 'manufacturer' ),
'view_item' => _x( 'View Manufacturer', 'manufacturer' ),
'search_items' => _x( 'Search Maufacturers', 'manufacturer' ),
'not_found' => _x( 'No maufacturers found', 'manufacturer' ),
'not_found_in_trash' => _x( 'No maufacturers found in Trash', 'manufacturer' ),
'parent_item_colon' => _x( 'Parent Manufacturer:', 'manufacturer' ),
'menu_name' => _x( 'Maufacturers', 'manufacturer' ),
);
$args = array(
'labels' => $labels,
'hierarchical' => false,
'description' => 'Look up table to convert PL Serial to Ad Rotator Group',
'supports' => array( 'title', 'editor', 'custom-fields' ),
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'show_in_nav_menus' => true,
'publicly_queryable' => true,
'exclude_from_search' => false,
'has_archive' => true,
'query_var' => true,
'can_export' => true,
'rewrite' => true,
'capability_type' => 'manufacturer',
'map_meta_cap' => true
);
register_post_type( 'manufacturer', $args );
}
答案 0 :(得分:2)
尝试更改
'capability_type' => 'manufacturer', to
'capability_type' => 'post',
检查https://codex.wordpress.org/Function_Reference/register_post_type了解更多信息
答案 1 :(得分:0)
实际上正确的答案是在capability_type下添加“capabilities”数组,如下所示:
'capabilities' => array(
'publish_posts' => 'publish_manufacturers',
'edit_posts' => 'edit_manufacturers',
'edit_others_posts' => 'edit_others_manufacturers',
'delete_posts' => 'delete_manufacturers',
'delete_others_posts' => 'delete_others_manufacturers',
'read_private_posts' => 'read_private_manufacturers',
'edit_post' => 'edit_manufacturer',
'delete_post' => 'delete_manufacturer',
'read_post' => 'read_manufacturer'),
接下来,您必须下载WordPress插件存储库中的“Members”之类的用户角色管理插件。在那里,您将为管理员和/或其他用户角色分配这些功能。之后才会出现在侧边菜单中。