Wie entferne ich eine Taxonomie aus WordPress?

Lesezeit: 3 Minuten

Ich erstelle verschiedene benutzerdefinierte Beitragstypen und Taxonomien und möchte die Taxonomie „Beitrags-Tags“ aus dem standardmäßigen Beitragstyp „Beiträge“ entfernen. Wie mache ich das?

Danke.

Wie entferne ich eine Taxonomie aus Wordpress
Evan

Ich schlage vor, dass Sie sich nicht mit dem eigentlichen Global anlegen. Es ist sicherer, die Taxonomie einfach vom Beitragstyp abzumelden: register_taxonomy wird sowohl für die Erstellung als auch für die Änderung verwendet.

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

So entfernen Sie den Seitenleistenmenüeintrag:

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

add_action( 'admin_menu', 'remove_menus' );

  • Hat für mich funktioniert! Scheint auch der lokalisierteste Einfluss zu sein.

    – Samuel Hulick

    11. Februar 2012 um 22:32 Uhr

  • Das funktioniert, aber der Link in der Seitenleiste ist immer noch da!

    – Lars Ebert

    27. März 2014 um 15:22 Uhr

  • So entfernen Sie den Menüeintrag der Seitenleiste: function remove_menus(){ remove_menu_page('edit-tags.php?taxonomy=post_tag'); // Post tags } add_action( 'admin_menu', 'remove_menus' );

    – Pixeline

    23. November 2014 um 16:28 Uhr


  • Dies war die einfachste Lösung, außerdem wurde der Menüpunkt für mich ohne das zweite Skript entfernt.

    – Ken Prince

    22. Dezember 2014 um 19:51 Uhr

  • Ein kleiner Fehler, den ich hier gefunden habe: Die Taxonomie wird immer noch auf der Seite mit den Anzeigeoptionen angezeigt, wenn Sie Ihre Menüs bearbeiten. Um dies zu beheben, übergeben Sie einfach ein zusätzliches args-Array: register_taxonomy( 'post_tag', array(), array('show_in_nav_menus' => false) );

    – Will Haynes

    4. April 2015 um 16:28 Uhr


Vielleicht wäre eine technisch korrektere Methode zu verwenden unregister_taxonomy_for_object_type

add_action( 'init', 'unregister_tags' );

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

  • Dies ist möglicherweise nicht erforderlich, aber Sie können prüfen, ob die Taxonomie bereits mit dem Objekttyp verknüpft ist, bevor Sie sie mit entfernen if ( is_object_in_taxonomy( 'post', 'post_tag' ) ) { ... }

    – martisj

    1. Januar 2017 um 21:20 Uhr

Wo steht ‘taxonomy_to_remove‘ geben Sie die Taxonomie ein, die Sie entfernen möchten. Sie können es beispielsweise durch das vorhandene ersetzen, post_tag oder category.

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

  • beantwortet die Frage nicht. Das verbirgt es nur

    – Jeremy

    15. Februar 2016 um 20:36 Uhr

Vollständige Abmeldung und Entfernung (mindestens PHP-Version 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');
    });

Es gibt eine neue Funktion zum Entfernen der Taxonomie aus WordPress.

Use unregister_taxonomy( string $taxonomy ) function

Siehe Einzelheiten: https://developer.wordpress.org/reference/functions/unregister_taxonomy/

  • Dies kann nicht für integrierte Taxonomien verwendet werden, also kann dies vermutlich nicht für “Tags” verwendet werden?

    – Rick Curran

    3. Oktober 2016 um 11:02 Uhr

  • Um eingebaute Taxonomie-ähnliche Tags zu entfernen, können wir diese Funktion unten verwenden: function mh_unregister_tags_for_posts() { unregister_taxonomy_for_object_type( ‘post_tag’, ‘post’ ); } add_action( ‘init’, ‘mh_unregister_tags_for_posts’ );

    – Mahfuzul Hasan

    28. September 2017 um 10:39 Uhr


Wie entferne ich eine Taxonomie aus Wordpress
Benutzer2957058

Verwenden Sie es im Hook ‘admin_init’ anstelle von ‘init’

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

  • Dies kann nicht für integrierte Taxonomien verwendet werden, also kann dies vermutlich nicht für “Tags” verwendet werden?

    – Rick Curran

    3. Oktober 2016 um 11:02 Uhr

  • Um eingebaute Taxonomie-ähnliche Tags zu entfernen, können wir diese Funktion unten verwenden: function mh_unregister_tags_for_posts() { unregister_taxonomy_for_object_type( ‘post_tag’, ‘post’ ); } add_action( ‘init’, ‘mh_unregister_tags_for_posts’ );

    – Mahfuzul Hasan

    28. September 2017 um 10:39 Uhr


Wie entferne ich eine Taxonomie aus Wordpress
Vlad

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

867820cookie-checkWie entferne ich eine Taxonomie aus WordPress?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy