So entfernen oder verbergen Sie Kommentare aus benutzerdefinierten Beitragstypen » Deaktivieren Sie Kommentare in benutzerdefinierten Beitragstypen
Veröffentlicht: 2020-01-31Suchen Sie nach der besten Möglichkeit, Kommentare aus benutzerdefinierten Beitragstypen auszublenden oder die Kommentare aus benutzerdefinierten Beitragstypen vollständig zu entfernen? Wenn Sie dies tun, liegt die Lösung darin, wie Sie einen benutzerdefinierten Beitragstyp registrieren. Im Idealfall sind die benutzerdefinierten Beitragstypen wie die Seite und der Beitrag und sie erben alle Eigenschaften von Seiten und Beiträgen, wenn Sie ihnen erlauben, diese Funktionen zu haben.
Während Sie steuern können, wie benutzerdefinierte Beitragstypen verschiedene Funktionen unterstützen, kann es schwierig sein, die Funktionen zu steuern, die von benutzerdefinierten Beitragstypen in Plugins von Drittanbietern oder Ihrem Design unterstützt werden, das benutzerdefinierte Beitragstypen verwendet.
Aus diesem Grund ist es notwendig zu lernen, wie Sie Kommentare oder andere Funktionen entfernen können, die von benutzerdefinierten Beitragstypen unterstützt werden, die Sie nicht auf Ihrer Website haben möchten.
Dies wird ein sehr einfacher Prozess in wenigen Schritten sein, da es in WordPress eine Funktion gibt, die Ihnen hilft, Funktionen eines benutzerdefinierten Beitragstyps zu entfernen, die Sie nicht möchten.
Kommentare zu benutzerdefinierten Beitragstypen ausblenden
Wie oben erwähnt, müssen Sie zum erfolgreichen Entfernen von Kommentaren aus benutzerdefinierten Beitragstypen verstehen, wie benutzerdefinierte Beitragstypen registriert werden, und das Tutorial zum Registrieren eines benutzerdefinierten Beitragstyps ohne Verwendung eines Plugins ist ein guter Ausgangspunkt.
Sie können auch den folgenden Code in die Datei functions.php Ihres Themes kopieren, um einen benutzerdefinierten Beitragstyp zu registrieren, mit dem Sie testen können, wie Kommentare aus benutzerdefinierten Beitragstypen entfernt werden:
/** * Benutzerdefinierter Beitragstyp - register_post_type() * @description- Njengah Tutorial Custom Post Type Beispiel * @link -https://gist.github.com/Njengah/839466b773085ac2430772e081357cee * */ add_action('init', "njengah_tutorial_cpt"); Funktion njengah_tutorial_cpt(){ $labels = array( 'name' => _x('Tutorials', 'allgemeiner Name des Beitragstyps'), 'singular_name' => _x('Tutorial', 'post type singular name'), 'menu_name' => _x('Tutorials', 'Admin-Menü'), 'name_admin_bar' => _x('Tutorial', 'Neues in der Admin-Leiste hinzufügen'), 'add_new' => _x('Neu hinzufügen', ''), 'add_new_item' => __('Neues Tutorial hinzufügen'), 'edit_item' => __('Tutorial bearbeiten'), 'new_item' => __('Neues Tutorial'), 'all_items' => __('Alle Tutorials'), 'view_item' => __('Tutorial ansehen'), 'search_items' => __('Tutorials durchsuchen'), 'not_found' => __('Keine Tutorials gefunden'), 'not_found_in_trash' => __('Keine Tutorials im Papierkorb gefunden'), 'parent_item_colon' => __('Eltern-Tutorials:'), ); $args = array( 'hierarchical' => wahr, 'labels' => $labels, 'öffentlich' => wahr, 'publicly_queryable' => wahr, 'Beschreibung' => __('Beschreibung.'), 'show_ui' => wahr, 'show_in_menu' => wahr, 'show_in_nav_menus' => wahr, 'query_var' => wahr, 'umschreiben' => wahr, 'query_var' => wahr, 'rewrite' => array('slug' => 'tutorial'), 'capability_type' => 'Seite', 'has_archive' => wahr, 'menu_position' => 22, "show_in_rest" => wahr, 'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'comments', 'revisions', 'page-attributes', 'custom-fields' ) ); register_post_type('tutorial', $args); }
Wenn Sie sich diesen Code genau ansehen, gibt es eine wichtige Zeile im $args- Array, die den Schlüssel enthält – „supports“. Dies erfordert ein Array mit mehreren Werten, die die Funktionen darstellen, die vom benutzerdefinierten Beitragstyp unterstützt werden, wie auf dem Bild gezeigt unter :
Wenn sich dieser Kommentarwert in diesem Array befindet, bedeutet dies einfach, dass die Kommentare vom benutzerdefinierten Beitragstyp unterstützt werden und im benutzerdefinierten Beitragseditor angezeigt werden, wie in diesem speziellen benutzerdefinierten Beitragstyp des Tutorials gezeigt:
Sie können diese „Kommentare“ einfach aus diesem Registrierungscode für benutzerdefinierte Beitragstypen entfernen, und Sie registrieren den benutzerdefinierten Beitragstyp ohne die Unterstützung der Kommentare.
So entfernen Sie Kommentare aus benutzerdefinierten Beitragstypen
Da Sie möglicherweise nicht alle benutzerdefinierten Beitragstypen kontrollieren, die auf Ihrer Website von anderen Plugins oder Designs registriert werden, können Sie die Kommentare zu den benutzerdefinierten Beitragstypen mithilfe einer von WordPress bereitgestellten Entfernungsoption entfernen.
WP-Funktion: remove_post_type_support()
Diese Option hat die Form einer Funktion – remove_post_type_support(), die einfach die Unterstützung für verschiedene Funktionen für einen bestimmten benutzerdefinierten Beitragstyp entfernt.
Der allgemeine Codeausdruck für diese Funktion lautet wie folgt:
remove_post_type_support( string $post_type, string $feature )
Wie Sie sehen können, sind zwei Parameter erforderlich, und beide sind Zeichenfolgen, und die Parameter lauten wie folgt:
Parameter | Beschreibung |
$post_type | Dies ist der benutzerdefinierte Beitragstyp, aus dem wir die Kommentare oder andere Funktionen entfernen möchten, die von dem benutzerdefinierten Beitragstyp unterstützt werden, den wir entfernen möchten. |
$Funktion | Dies ist die Funktion des benutzerdefinierten Beitragstyps, die wir entfernen möchten. Zum Beispiel in diesem Fall; Wir möchten die Funktion „Kommentare“ entfernen. |
Um diese Kommentare aus dem benutzerdefinierten Beitragstyp zu entfernen, können wir jetzt einen Action-Hook schreiben, der sich an 'init' anhängt, und in der Callback-Funktion führen wir die Funktion remove_post_type_support() aus, an der wir die entsprechenden Parameter übergeben.
Das Folgende ist der Code, den Sie verwenden können, um den Kommentar aus dem benutzerdefinierten Beitragstyp mit dem Namen "Tutorial" zu entfernen.
/** * Kommentare zum benutzerdefinierten Beitragstyp des Tutorials entfernen */ add_action( 'init', 'remove_custom_post_type_comments' ); Funktion remove_custom_post_type_comments() { remove_post_type_support( 'tutorial', 'comments' ); }
Dieser Code sollte der Datei functions.php hinzugefügt werden, und Sie werden die benutzerdefinierten Posttyp-Kommentare erfolgreich entfernen, wie im Bild unten gezeigt:
Fazit
Wenn Sie benutzerdefinierte Post-Typ-Kommentare ausblenden möchten, müssen Sie die Unterstützung von Kommentaren nicht einbeziehen, wenn Sie den benutzerdefinierten Post-Typ registrieren.
Alternativ, wenn Sie es mit bestehenden benutzerdefinierten Beitragstypen zu tun haben und Kommentare aus diesen benutzerdefinierten Beitragstypen entfernen möchten; Sie sollten die remove_post_type_support() function
die auch andere Funktionen aus einem benutzerdefinierten Beitragstyp entfernt.
Sie können diesen Ansatz auch verwenden, um Bewertungen von WooCommerce-Produkten zu entfernen, da das Produkt ein benutzerdefinierter Beitragstyp ist und die Bewertungen den Kommentaren im standardmäßigen WordPress-Beitrag entsprechen.