カスタム投稿タイプのメニューのカテゴリを削除するにはどうすればよいですか?
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');
「book」の投稿タイプと投稿タグを使用しました.これはテストに便利だったためですが、このケースでこれを機能させるには何を変更する必要があるかは明らかです.必要なのは次のとおりです.
$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';
カスタム投稿タイプを作成していて、カテゴリ分類を追加しました.これは2つの方法で行うことができます:
どちらの場合も、左側の管理メニューのカスタム投稿メニューに追加の子メニュー項目が表示されます.
カテゴリはすでに
Post
メニューに表示されているので、再度表示する必要はありません.これを防ぐ方法はありますか?