web-dev-qa-db-ja.com

Wordpressから分類法を削除するにはどうすればよいですか?

さまざまなカスタム投稿タイプと分類法を作成していますが、デフォルトの「投稿」投稿タイプから「投稿タグ」分類法を削除したいと思います。これを行うにはどうすればよいですか?

ありがとう。

26
Evan

実際のグローバルをいじらないでください。投稿タイプから分類を登録解除する方が安全です。register_taxonomyは、作成と変更の両方に使用されます。

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

サイドバーメニューエントリを削除するには:

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

add_action( 'admin_menu', 'remove_menus' );
42
Evan

おそらく、より技術的に正しい方法は unregister_taxonomy_for_object_type

add_action( 'init', 'unregister_tags' );

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

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]);
}
4
cnotethegr8

完全に登録解除して削除(最小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');
    });
2
Den Media

「init」ではなく「admin_init」フックのインセットで使用します

function unregister_taxonomy(){
    register_taxonomy('post_tag', array());
}
add_action('admin_init', 'unregister_taxonomy');
2
user2957058

WordPressから分類法を削除する新機能があります。

Use unregister_taxonomy( string $taxonomy ) function

詳細を見る: https://developer.wordpress.org/reference/functions/unregister_taxonomy/

2
Mahfuzul Hasan

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

0
Vlad