添加链接到子菜单

时间:2014-01-17 11:15:41

标签: php wordpress

我正在与wordpress插件和自定义帖子类型进行斗争 - 特别是将其添加到子菜单中。我检查了wordpress codex页面,即:自定义帖子类型,角色和功能以及添加子菜单Codex,我无法发布链接,因为我没有10个声誉。

但我找不到办法做到这一点。我想我错过了一些简单的东西,这里有人可以提供帮助。

我有一个名为ns_home_page的wordpress自定义帖子类型,它设置为

register_post_type('ns_home_page',
array(
'labels' => array(
'name' => __( 'Home Page' ),
'singular_name' => __( 'Home Page' )
),
'public' => true,
'has_archive' => true,
'supports' => array( 'title', 'editor', 'thumbnail', 'revisions' ),
'show_ui' => true,
'show_in_menu' => false,
)
);

接下来,我已经通过

添加了它
add_action('init', array($this, 'create_homepage_items_type')); 

调用我在插件中创建的类中的方法。一切正常。我添加了三个新帖子,他们100%工作。

现在问题是我想将这些添加到管理员的自定义菜单中。

我有以下代码:

$page_title = 'Ns Content';
    $menu_title = 'NS Content';
    $capability = 'manage_options';
    $menu_slug = 'ns-content';
    $capability = "manage_options";
    $function = array($this, 'display_admin');
    add_menu_page($page_title, $menu_title, $capability, $menu_slug, $function);

    $submenu_page_title = 'Ns Home Page';
    $submenu_title = 'Home Page';
    $submenu_slug = 'edit.php?post_type=ns_home_page';
    $submenu_function = 'myplugin_help';
    $capability = "publish_posts";
add_submenu_page($menu_slug, $submenu_page_title, $submenu_title, $capability, $submenu_slug, $submenu_function);

这会在我的管理员中创建一个标题为“NS Content”的菜单,它有两个子菜单,“NS Content”和“Home Page”。但是,主页内容类型的链接目前是

/wp-admin/admin.php?page=edit.php?post_type=ns_home_page 为了显示我的帖子,我需要链接

/wp-admin/edit.php?post_type=ns_home_page Ant想法如何正确设置此链接?

2 个答案:

答案 0 :(得分:0)

您需要正确注册自定义帖子类型,一旦完成,列表,添加,编辑,垃圾等功能将由WordPress自动处理。

您可以参考http://generatewp.com/post-type/了解更多信息。

答案 1 :(得分:0)

看一下$ submenu_slug,用 nshomepage 替换 edit.php?post_type = ns_home_page 并试一下它应该可行