WordPress: Tags nur für Beiträge deaktivieren

Lesezeit: 2 Minuten

Benutzer-Avatar
Lars Ebert

Ich entwickle derzeit ein Thema für WordPress 3.8.1. Da mein Theme keine Tags anzeigt, möchte ich sie deaktivieren (nur von den Beiträgen, nicht von benutzerdefinierten Beitragstypen). Aber wie mache ich das? Ich habe das versucht, aber anscheinend bringt es nichts:

register_taxonomy('post_tag', null);

Um es klar zu sagen: Ich möchte die Tags in den Template-Dateien nicht nur ausblenden, sondern komplett deaktivieren, also gibt es im Backend keinen Menüpunkt für Tags unter Posts.

Ist es überhaupt möglich? Hoffentlich. Danke für Ihre Hilfe!

Aktualisieren

Außerdem habe ich folgendes probiert, ohne Erfolg:

register_taxonomy('post_tag', array());

und

global $wp_taxonomies;
$taxonomy = 'post_tag';
if(taxonomy_exists($taxonomy))
    unset($wp_taxonomies[$taxonomy]);

Beide entfernen das Tag-Feld beim Bearbeiten eines Beitrags, aber es gibt immer noch den Link im Menü, der auf die Liste der Tags zeigt!

  • Wozu? Warum sollten Sie die gesamte Funktionalität deaktivieren, wenn Sie sie nur “nicht anzeigen” möchten?

    – Tomasz Kowalczyk

    27. März 2014 um 15:15 Uhr

  • Siehe diesen Link: wordpress.stackexchange.com/questions/93634/…

    – Tomasz Kowalczyk

    27. März 2014 um 15:16 Uhr

  • und das: stackoverflow.com/questions/4249694/…

    – Tomasz Kowalczyk

    27. März 2014 um 15:17 Uhr

  • @TomaszKowalczyk Ich möchte die Funktionalität deaktivieren, damit die Benutzeroberfläche einfacher ist und der Benutzer sich nicht fragen muss, warum es eine Option für Tags gibt!

    – Lars Ebert

    27. März 2014 um 15:23 Uhr

Ab WordPress 3.7 gibt es eine unregister_taxonomy_for_object_type Funktion, die genau für solche Dinge verfügbar ist.

In Ihrem Fall:

// Remove tags support from posts
function myprefix_unregister_tags() {
    unregister_taxonomy_for_object_type('post_tag', 'post');
}
add_action('init', 'myprefix_unregister_tags');

Sehen Sie sich die Dokumentation für diese Funktion an hier.

  • Das ist die beste Lösung, die ich bisher gefunden habe. Es entfernt das Admin-Menüelement „Tags“, die Spalte „Tags“ beim Anzeigen der Beitragsliste und die Metabox „Tags“ beim Bearbeiten eines einzelnen Beitrags.

    – jg314

    21. August 2017 um 20:29 Uhr

Fügen Sie diesen Code in Ihre functions.php ein

add_action( 'admin_menu', 'myprefix_remove_meta_box');
function myprefix_remove_meta_box(){
   remove_meta_box( 'tagsdiv-post_tag','post','normal' );
}

tags Meta Box hat eine Klasse von tagsdiv-post_tagalso wird dies entfernt tags Metabox

ODER

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

wenn Sie es vollständig entfernen möchten

  • Ja, es wird entfernt, aber der Link in der linken Menüleiste ist immer noch da!

    – Lars Ebert

    27. März 2014 um 15:23 Uhr

  • Danke, aber Ihre zweite Version entfernt immer noch nur die Box, nicht den Link im Menü!

    – Lars Ebert

    27. März 2014 um 15:30 Uhr

  • Hast du versucht add_action('init', 'remove_tags'); denn bei mir entfernt es die tinte im menü was unter posts steht.

    – Benutzer3293145

    27. März 2014 um 15:36 Uhr

1384920cookie-checkWordPress: Tags nur für Beiträge deaktivieren

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

Privacy policy