Как удалить категории в меню в произвольном типе сообщения?
1 ответ
- голосов
Это было очень быстро взломано.Точно не знаю,будут ли проблемы с переводом,но буду.
function remove_menu_from_cpt() {
global $submenu;
$post_type = 'book';
$tax_slug = 'post_tag';
if (isset($submenu['edit.php?post_type='.$post_type])) {
foreach ($submenu['edit.php?post_type='.$post_type] as $k => $sub) {
if (false !== strpos($sub[2],$tax_slug)) {
unset($submenu['edit.php?post_type='.$post_type][$k]);
}
}
}
}
add_action('admin_menu','remove_menu_from_cpt');
Он использовал тип сообщения "книга" и теги сообщений,потому что это было удобно для меня,чтобы проверить,но довольно очевидно,что нужно изменить,чтобы это работало в вашем случае - я считаю,что вам нужно:
$post_type = 'my_custom_post_type_name';
$tax_slug = 'category';
This was hacked together very quickly. I don't for sure if there will be problems with translation, but I be there would be.
function remove_menu_from_cpt() {
global $submenu;
$post_type = 'book';
$tax_slug = 'post_tag';
if (isset($submenu['edit.php?post_type='.$post_type])) {
foreach ($submenu['edit.php?post_type='.$post_type] as $k => $sub) {
if (false !== strpos($sub[2],$tax_slug)) {
unset($submenu['edit.php?post_type='.$post_type][$k]);
}
}
}
}
add_action('admin_menu','remove_menu_from_cpt');
It used the 'book' post type and post tags, because that was convenient for me to test, but it pretty obvious what needs to change to make this work for your case-- I believe you need:
$post_type = 'my_custom_post_type_name';
$tax_slug = 'category';
Я создаю собственный тип сообщения и добавляю таксономию категорий.Это можно сделать двумя способами:
В обоих случаях в моем настраиваемом меню сообщений в левом меню администратора появляется дополнительный элемент дочернего меню.
Категории уже отображаются в меню
Post
,поэтому мне не нужно,чтобы они отображались снова.Есть ли способ предотвратить это?