Tutoriale WordPress de încredere, atunci când aveți cea mai mare nevoie.
Ghidul începătorului pentru WordPress
Cupa WPB
25 de milioane+
Site-uri web care folosesc plugin-urile noastre
16+
Ani de experiență WordPress
3000+
Tutoriale WordPress de la experți

Cum să afișați doar categoria părinte în bucla postărilor WordPress

Știm cu toții cât de important este să organizăm conținutul pe un site web. La WPBeginner, înțelegem că utilizarea categoriilor și subcategoriilor ajută vizitatorii să exploreze site-ul dvs. și îmbunătățește modul în care acesta se clasează în rezultatele căutării. O structură bună a categoriilor ajută, de asemenea, vizitatorii să găsească ceea ce au nevoie.

Majoritatea temelor WordPress vor lista automat toate categoriile asociate cu o postare, chiar și subcategoriile. Acest lucru poate crea confuzie pentru vizitatorii dvs. Cu toate acestea, am avut recent un cititor care dorea să afișeze doar categoria principală pe pagina sa de postare unică. Dorea ca vizitatorii să se concentreze pe subiectul principal, în loc să fie copleșiți de un număr mare de subcategorii.

În acest articol, vă vom arăta cum să utilizați o simplă bucată de cod pentru a modifica modul în care WordPress afișează categoriile. Acest lucru vă va permite să afișați doar categoria principală pe pagina unei postări individuale, ceea ce poate îmbunătăți semnificativ experiența vizitatorilor pe site-ul dvs.

Afișarea doar a categoriei părinte în bucla WordPress

Când să afișați doar categoria părinte în WordPress

Mulți proprietari de site-uri web folosesc categorii părinte și copil pentru a crea o structură pentru site-urile lor.

De exemplu, un blog de călătorii poate avea destinații de călătorie organizate pe categorii, unde fiecare regiune este o categorie părinte și orașele sunt categorii copil.

Categorii părinte și copil afișate

Similar, un blog culinar poate publica rețete organizate în categorii părinte și copil. De exemplu, o categorie părinte ar putea fi tipul de bucătărie, iar o categorie copil ar putea fi tipul de fel de mâncare.

Acum, majoritatea temelor WordPress folosesc eticheta de șablon the_category() template tag pentru a lista toate categoriile asociate cu o postare.

Această funcție este eficientă, dar va afișa toate categoriile în ordine alfabetică și va ignora complet relația părinte/copil.

Acestea fiind spuse, să vedem cum putem schimba acest comportament și să afișăm doar categoria părinte în bucla WordPress.

Afișare doar a categoriei părinte în bucla de postări WordPress

Pentru acest tutorial, va trebui să editați fișierele temei WordPress. Dacă nu ați mai făcut acest lucru înainte, consultați articolul nostru despre cum să copiați și să lipiți fragmente de cod în WordPress.

Mai întâi, trebuie să adăugați un cod în fișierul functions.php al temei dvs. sau să utilizați un plugin pentru fragmente de cod. Vă recomandăm să utilizați WPCode deoarece vă permite să adăugați cod fără a vă defecta site-ul, iar validarea inteligentă a fragmentelor de cod vă ajută să preveniți erorile comune de cod.

Aflați mai multe în ghidul nostru despre cum să adăugați cod personalizat în WordPress fără a vă strica site-ul.

Pentru acest tutorial, vom folosi versiunea gratuită a WPCode. Deși nu are toate caracteristicile avansate ale versiunii complete, vine cu tot ce aveți nevoie pentru a începe.

Primul lucru pe care trebuie să îl faceți este să instalați și să activați pluginul WPCode. Dacă aveți nevoie de ajutor, puteți urma ghidul nostru pas cu pas despre cum să instalați un plugin WordPress.

La activare, puteți accesa pagina WPCode » New Snippet

Adăugarea unui nou fragment în WPCode

Aceasta va deschide o pagină unde puteți crea un fragment personalizat.

Mai întâi, trebuie să adăugați un titlu pentru fragment. După aceea, puteți copia și lipi următorul fragment de cod în panoul Previzualizare cod.

function wpb_get_parent_terms($taxonomy = 'category')
{
    $currentPost = get_post();
    $terms       = get_the_terms($currentPost->ID, $taxonomy);

    if (is_wp_error($terms)) {
        /** @var \WP_Error $terms */
        throw new \Exception($terms->get_error_message());
    }

    $map = array_map(
        function ($term) use ($taxonomy) {
            return '<a href="' . esc_url(get_term_link($term->term_id,
                    $taxonomy)) . '" title="' . esc_attr($term->name) . '">
                ' . $term->name . '
                </a>';
        },
        array_filter($terms, function ($term) {
            return $term->parent == 0;
        })
    );

    return implode(', ', $map);
}
Adăugarea unui titlu și a unui fragment de cod la WPCode

Apoi, trebuie să selectați opțiunea „PHP Snippet” din meniul derulant Tip de cod și să comutați comutatorul Inactiv la Activ.

În final, asigurați-vă că faceți clic pe butonul „Salvează fragmentul” pentru a stoca setările.

În WPCode, selectați PHP ca Tip de cod și activați Snippet-ul

Acest cod creează pur și simplu o nouă funcție wpb_get_parent_terms(). În mod implicit, această funcție va afișa doar categoriile părinte.

Apoi, trebuie să plasați această funcție în fișierele temei WordPress unde doriți să afișați singură categoria părinte.

Pentru a afla în ce fișier de șablon să căutați, consultați foaia noastră de referință despre ierarhia șabloanelor WordPress pentru începători.

Practic, veți căuta eticheta de șablon the_category() în bucla WordPress. Odată ce ați găsit-o, trebuie să o înlocuiți cu următorul cod:

<?php wpb_get_parent_terms(); ?> 

Acest cod va afișa doar categoria dvs. părinte.

Dacă aveți mai multe categorii care sunt categorii părinte sau independente, atunci toate aceste categorii vor fi afișate de asemenea.

Afișată doar categoria părinte

Fragmentul de cod va funcționa și pentru toate celelalte taxonomii. De exemplu, categoriile de produse WooCommerce sau orice taxonomie personalizată pe care ați putea-o avea.

Pur și simplu modificați codul astfel:

<?php wpb_get_parent_terms( 'product_cat '); ?>

Acest cod va afișa categoriile de produse pentru un magazin WooCommerce.

De asemenea, va afișa doar categoriile părinte sau independente pentru un produs.

Afișată doar categoria părinte a produsului

Dacă doriți să afișați o taxonomie personalizată, înlocuiți product_cat cu numele taxonomiei dvs. personalizate.

Ghiduri experte despre afișarea categoriilor în WordPress

Sperăm că acest articol v-a ajutat să învățați cum să afișați doar categoria părinte pentru postările dvs. WordPress. De asemenea, ați putea dori să vedeți alte ghiduri legate de afișarea categoriilor WordPress:

Dacă ți-a plăcut acest articol, te rugăm să te abonezi la canalul nostru de YouTube pentru tutoriale video WordPress. Ne poți găsi, de asemenea, pe Twitter și Facebook.

Dezvăluire: Conținutul nostru este susținut de cititori. Acest lucru înseamnă că dacă faceți clic pe unele dintre linkurile noastre, este posibil să câștigăm un comision. Vedeți cum este finanțat WPBeginner, de ce contează și cum ne puteți susține. Iată procesul nostru editorial.

Cel mai bun instrumentar WordPress

Obține acces GRATUIT la instrumentarul nostru - o colecție de produse și resurse legate de WordPress pe care fiecare profesionist ar trebui să le aibă!

Interacțiuni cu cititorii

11 CommentsLeave a Reply

  1. adăugați marcaje de dată la postările dvs. în acest fel știm când ați scris-o și nu includeți fragmente de cod vechi de 5 ani.

Lasă un răspuns

Vă mulțumim că ați ales să lăsați un comentariu. Vă rugăm să rețineți că toate comentariile sunt moderate conform politicii noastre de comentarii, iar adresa dvs. de e-mail NU va fi publicată. Vă rugăm să NU folosiți cuvinte cheie în câmpul nume. Să avem o conversație personală și semnificativă.