Wordpress权限问题- register_post_type()



通过register_post_type()添加自定义帖子类型到已有菜单时,编辑页面(wp-admin/edit.php?post_type=locations)不允许查看-错误信息显示:You do not have sufficient permissions to access this page.

然而,使用主管理菜单(即'show_in_menu' = true)允许页面罚款。

注意:正在使用administrators帐号;链接是创建和可见的两种方法,我想为自定义的帖子类型可以通过预先存在的菜单访问 cms

使用的代码如下:

register_post_type("location", array(
    "labels" => array("name" => "Locations", "singular_name" => "Location"),
    "show_ui" => true,
    "show_in_admin_bar" => true,
    "show_in_menu" => "admin.php?page=cms", // => true : works as main menu item
    "supports" => array('title'),
    "show_in_nav_menus" => false,
    "has_archive" => false,
    "public" => true
));

希望有人能说明这个问题。

您可能没有使用init操作。此外,您还命名了您的帖子类型Locations,但不允许在帖子类型名称中使用大写字母。

您的show_in_menu也无效。

functions locations(){
  register_post_type("locations", array(
    "labels" => array("name" => "Locations", "singular_name" => "Location"),
    "show_ui" => true,
    "show_in_nav_menus" => false,
    "show_in_admin_bar" => true,
    "supports" => array('title'),
    // Not allowed to view, link is created as sub-menu item
    "show_in_menu" => "cms"
    // Allowed to view, link is created as main menu item
    "show_in_menu" => true
  ));   
}
add_action( 'init', 'locations' );

有太多的小错误。你应该查看一下法典

中的例子。

最新更新