gpt4 book ai didi

Wordpress - 从自定义帖子类型中删除子菜单

转载 作者:行者123 更新时间:2023-12-03 08:24:27 24 4
gpt4 key购买 nike

我创建了一个带有标签分类支持的名为投资组合的自定义帖子类型。

由于 WP 在帖子标签和自定义帖子类型标签之间没有区别,我创建了一个菜单项分类法,我想在其中放置类别和帖子标签。我设法创建了菜单和子菜单,并从“帖子”菜单中删除了类别和帖子标签,但我没有设法从自定义帖子类型菜单中删除帖子标签。

我试过:

remove_submenu_page( 'edit.php?post_type=portfolio', 'edit-tags.php?taxonomy=post_tag&post_type=portfolio' );

最佳答案

您可以使用 remove_submenu_page() - 然而,诀窍是让 slug 完全正确,要做到这一点,最简单的方法是转储全局 $submenu 并检查 menu_slug 和 submenu_slug。

global $submenu;
var_dump($submenu);

这将为您提供菜单数组,顶级键是 menu_slug,然后可以在嵌套数组的元素 2 中找到正确的 submenu_slug。

因此,如果我有一个名为“my_events”的自定义帖子类型并且我想从中删除标签菜单,我的原始菜单结构将如下所示
...
'edit.php?post_type=my_events' =>
array
5 =>
array
0 => string 'All Events' (length=10)
1 => string 'edit_posts' (length=10)
2 => string 'edit.php?post_type=my_events' (length=28)
10 =>
array
0 => string 'Add New' (length=7)
1 => string 'edit_posts' (length=10)
2 => string 'post-new.php?post_type=my_events' (length=32)
15 =>
array
0 => string 'Tags' (length=4)
1 => string 'manage_categories' (length=17)
2 => string 'edit-tags.php?taxonomy=post_tag&post_type=my_events' (length=55)
...

从中可以看出 menu_slug 是 'edit.php?post_type=my_events'标签菜单的子菜单标签是 'edit-tags.php?taxonomy=post_tag&post_type=my_events' .

所以删除函数调用将是:
remove_submenu_page('edit.php?post_type=my_events', 'edit-tags.php?taxonomy=post_tag&post_type=my_events');

请注意,子菜单 slug 是 html 编码的,因此与号现在是 & - 这可能是人们难以根据第一原则确定 slug 名称应该是什么的原因。

关于Wordpress - 从自定义帖子类型中删除子菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7610702/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com