2010-11-22 13 views

答えて

5

taxonomy_to_remove」には、削除するタクソノミを入力する場所が表示されます。たとえば、それを既存のpost_tagまたはcategoryに置き換えることができます。

add_action('init', 'unregister_taxonomy'); 
function unregister_taxonomy(){ 
    global $wp_taxonomies; 
    $taxonomy = 'taxonomy_to_remove'; 
    if (taxonomy_exists($taxonomy)) 
     unset($wp_taxonomies[$taxonomy]); 
} 
+0

が質問に答えていません。これはちょうどそれを隠す – Jeremy

41

実際のグローバルを混乱させないことをお勧めします。ポストタイプからタクソノミーを単純に登録解除する方が安全です:register_taxonomyは、作成と変更の両方に使用されます。

function unregister_taxonomy(){ 
    register_taxonomy('post_tag', array()); 
} 
add_action('admin_init', 'unregister_taxonomy'); 
+0

私のために働いた!同様に最もローカライズされたインパクトのようです。 –

+0

これは機能しますが、サイドバーのリンクはまだあります! –

+0

サイドバーのメニューエントリを削除する方法は次のとおりです。 'function remove_menus(){ remove_menu_page( 'edit-tags.php?taxonomy = post_tag'); //投稿タグ } add_action( 'admin_menu'、 'remove_menus'); ' – pixeline

2

:サイドバーのメニュー項目を削除するには

function ev_unregister_taxonomy(){ 
    register_taxonomy('post_tag', array()); 
} 
add_action('init', 'ev_unregister_taxonomy'); 

unregister_taxonomy_for_object_type

add_action('init', 'unregister_tags'); 

function unregister_tags() { 
    unregister_taxonomy_for_object_type('post_tag', 'post'); 
} 
7

おそらく、より技術的に正しい方法を用いることであろうではない 'のinit' 'admin_init' フックinseteadでそれを使用し

// Remove menu 
function remove_menus(){ 
    remove_menu_page('edit-tags.php?taxonomy=post_tag'); // Post tags 
} 

add_action('admin_menu', 'remove_menus'); 
+1

タクソノミがオブジェクト型にすでに関連付けられているかどうかをチェックしてから、それを 'if(is_object_in_taxonomy( ' post_tag ')){...} ' – martisj

2

WordPressからタクソノミを削除する新しい機能があります。

Use unregister_taxonomy(string $taxonomy) function

参照詳細:https://developer.wordpress.org/reference/functions/unregister_taxonomy/

+1

組み込みタクソノミーには使用できないので、おそらくこれは'タグ 'には使用できません。内蔵除去タグのような分類我々は以下、この機能を使用することができるため –

+0

: 関数mh_unregister_tags_for_posts(){ unregister_taxonomy_for_object_type(「post_tag」、「ポスト」)。 } add_action( 'init'、 'mh_unregister_tags_for_posts'); –

0

add_action('admin_menu', 'remove_menu_items'); function remove_menu_items() { remove_submenu_page('edit.php','edit-tags.php?taxonomy=post_tag'); }

1

総登録解除および削除(!最小限のPHPバージョン5.4)

add_action('init', function(){ 
     global $wp_taxonomies; 
     unregister_taxonomy_for_object_type('category', 'post'); 
     unregister_taxonomy_for_object_type('post_tag', 'post'); 
     if (taxonomy_exists('category')) 
      unset($wp_taxonomies['category']); 
     if (taxonomy_exists('post_tag')) 
      unset($wp_taxonomies['post_tag']); 
     unregister_taxonomy('category'); 
     unregister_taxonomy('post_tag'); 
    });