Cum să eliminați sau să ascundeți comentariile din tipul de postare personalizat » Dezactivați comentariile în tipurile de postări personalizate
Publicat: 2020-01-31Căutați cea mai bună modalitate de a ascunde comentariile de la tipurile de postări personalizate sau de a elimina complet comentariile de la tipurile de postări personalizate? Dacă o faci, soluția constă în modul în care înregistrezi un tip de postare personalizat. În mod ideal, tipurile de postări personalizate sunt ca pagina și postarea și moștenesc toate caracteristicile paginilor și postărilor dacă le permiteți să aibă aceste caracteristici.
Deși puteți controla modul în care tipurile de postări personalizate acceptă diferite funcții, poate fi dificil să controlați funcțiile acceptate de tipurile de postări personalizate în pluginuri terță parte sau tema dvs. care utilizează tipuri de postări personalizate.
Din acest motiv, este necesar să aflați cum puteți elimina comentariile sau alte caracteristici care sunt acceptate de tipurile de postări personalizate pe care nu le doriți de pe site-ul dvs.
Acesta va fi un proces foarte simplu în câțiva pași, deoarece există o funcție în WordPress care vă va ajuta să eliminați funcțiile unui tip de postare personalizat pe care nu le doriți.
Ascundeți comentariile la tipurile de postări personalizate
După cum sa menționat mai sus, pentru a elimina cu succes comentariile de la tipurile de postări personalizate, trebuie să înțelegeți cum sunt înregistrate tipurile de postări personalizate, iar tutorialul despre cum să înregistrați un tip de postare personalizat fără a utiliza un plugin este un loc bun pentru a începe.
De asemenea, puteți copia următorul cod în fișierul functions.php al temei pentru a înregistra un tip de postare personalizat pe care îl puteți utiliza pentru a testa cum să eliminați comentariile din tipurile de postări personalizate:
/** * Tip personalizat de postare - register_post_type() * @description- Njengah Tutorial Exemplu de tip de postare personalizat * @link -https://gist.github.com/Njengah/839466b773085ac2430772e081357cee * */ add_action('init', "njengah_tutorial_cpt"); funcția njengah_tutorial_cpt(){ $labels = array( 'name' => _x('Tutoriale', 'nume general tip post'), 'singular_name' => _x('Tutorial', 'post type singular name'), 'menu_name' => _x('Tutoriale', 'meniu admin'), 'name_admin_bar' => _x('Tutorial', 'adăugaţi nou pe bara de administrare'), 'add_new' => _x('Adăugați nou', ''), 'add_new_item' => __('Adăugați un tutorial nou'), 'edit_item' => __('Edit Tutorial'), 'new_item' => __('Tutorial nou'), 'all_items' => __('Tot Tutorialul'), 'view_item' => __('Vedeți tutorialul'), 'search_items' => __('Tutoriale de căutare'), 'not_found' => __('Nu s-au găsit tutoriale'), 'not_found_in_trash' => __('Nu s-au găsit tutoriale în Coșul de gunoi'), 'parent_item_colon' => __('Tutoriale pentru părinți:'), ); $args = matrice( 'ierarhic' => adevărat, 'labels' => $labels, „public” => adevărat, 'publicly_queryable' => adevărat, 'description' => __('Descriere.'), 'show_ui' => adevărat, 'show_in_menu' => adevărat, 'show_in_nav_menus' => adevărat, 'query_var' => adevărat, 'rewrite' => adevărat, 'query_var' => adevărat, 'rewrite' => array('slug' => 'tutorial'), 'capability_type' => 'pagină', 'has_archive' => adevărat, 'menu_position' => 22, „show_in_rest” => adevărat, 'supports' => array( 'titlu', 'editor', 'autor', 'miniatură', 'comentarii', 'reviziuni', 'atribute-paginii', 'câmpuri-personalizate') ); register_post_type('tutorial', $args); }
Dacă te uiți cu atenție la acel cod, există o linie importantă care se află în matricea $args care are cheia - „suportă” aceasta ia o matrice cu mai multe valori care reprezintă caracteristicile suportate de tipul de post personalizat, așa cum se arată în imagine mai jos:
Când această valoare a comentariilor se află în acea matrice, înseamnă pur și simplu că comentariile sunt acceptate de tipul de postare personalizat și vor fi văzute în editorul de postare personalizat, așa cum se arată în acest tip de postare personalizat tutorial specific:
Puteți elimina pur și simplu acele „comentarii” din acest cod de înregistrare a tipurilor de postări personalizate și veți înregistra tipul de postare personalizat fără suportul comentariilor.
Cum să eliminați comentariile din tipurile de postări personalizate
Deoarece este posibil să nu controlați toate tipurile de postări personalizate înregistrate pe site-ul dvs. de către alte pluginuri sau teme, puteți elimina comentariile la tipurile de postări personalizate folosind o opțiune de eliminare oferită de WordPress.
Funcția WP: remove_post_type_support()
Această opțiune este sub forma unei funcții – remove_post_type_support() care pur și simplu elimină suportul pentru diferite funcții pentru un anumit tip de postare personalizat.
Expresia generală a codului pentru această funcție este următoarea:
remove_post_type_support( string $post_type, string $feature )
După cum puteți vedea, este nevoie de doi parametri și ambii sunt șiruri de caractere, iar parametrii sunt după cum urmează:
Parametru | Descriere |
$post_type | Acesta este tipul de postare personalizat din care intenționăm să eliminăm comentariile sau orice altă caracteristică care este acceptată de tipul de postare personalizată pe care dorim să o eliminăm. |
$caracteristică | Aceasta este caracteristica tipului de postare personalizat pe care dorim să o eliminăm. De exemplu, în acest caz; dorim să eliminăm funcția „comentarii”. |
Pentru a elimina aceste comentarii din tipul de postare personalizat putem scrie acum un cârlig de acțiune care se agăță pe „init” iar în funcția de apel invers rulăm funcția remove_post_type_support() unde vom trece parametrii respectivi.
Următorul este codul pe care îl puteți folosi pentru a elimina comentariul din tipul de postare personalizat numit „tutorial”
/** * Eliminați tutorialul personalizat comentariile tip postare */ add_action('init', 'remove_custom_post_type_comments'); funcția remove_custom_post_type_comments() { remove_post_type_support( 'tutorial', 'comentarii'); }
Acest cod ar trebui adăugat în fișierul functions.php și veți elimina cu succes comentariile personalizate de tipul postării, așa cum se arată în imaginea de mai jos:
Concluzie
Când doriți să ascundeți comentariile cu tipul de postare personalizat, nu trebuie să includeți suportul pentru comentarii atunci când înregistrați tipul de postare personalizat.
Ca alternativă, dacă aveți de-a face cu tipuri de postări personalizate existente și doriți să eliminați comentariile din aceste tipuri de postări personalizate; ar trebui să utilizați funcția remove_post_type_support() function
care elimină și alte caracteristici dintr-un tip de postare personalizat.
De asemenea, puteți utiliza această abordare pentru a elimina recenziile de pe produsele WooCommerce, deoarece produsul este un tip de postare personalizat, iar recenziile sunt echivalente cu comentariile din postarea implicită WordPress.