Skip to main content

Categoriile ofera o solutie simpla pentru gruparea articolelor similare. Acestea ajuta utilizatorii sa gaseasca continut asemanator, iar atunci cand sunt utilizate corect, categoriile va pot ajuta sa obtineti si rezultate SEO mai bune. In afara de toate aceste beneficii, categoriile vin, de asemenea, cu o alta caracteristica interesanta – descrierea. Este posibil sa adaugati descrieri separate pentru categoriile dvs. si sa le afisati pe site. Majoritatea oamenilor tind sa creeze categoriile in timp ce publica un post nou. De aceea ratati ocazia de a utiliza descrieri de categorii.

Nota importanta (la zi): in eCommerce, cele mai valoroase „arhive” nu sunt doar Category/Tag pentru articole, ci in special Product category page (taxonomie WooCommerce: product_cat) si Product tag page (taxonomie WooCommerce: product_tag). Tot ce urmeaza mai jos se aplica si acestor pagini, cu mentiunea ca in WooCommerce exista si hook-uri dedicate (vezi sectiunea noua adaugata mai jos).

Cum se adauga descrierea categoriei?

WordPress va permite sa adaugati categorii in timp ce scrieti un post nou. Dar acest lucru va permite doar sa furnizati numele categoriei. Acesta este motivul pentru care majoritatea oamenilor nu au ocazia de a adauga descrieri la categoriile lor.

Pentru a adauga descrieri de categorii, accesati Mesaje -> Categorii. Aceasta va va duce la o pagina care contine toate categoriile site-ului dvs. Web.

Nota (Product category / Product tag pages): pentru WooCommerce, descrierile se editeaza din Produse -> Categorii (product_cat) si Produse -> Etichete (product_tag), nu din Postari.

Daca creati o noul categorie, veti gasi campuri separate pentru furnizarea titlului, a tastei si a descrierii. Pentru a adauga descrieri la categoriile existente, faceti clic pe „Editare” din categorie. In pagina care rezulta, furnizati descrierea si faceti clic pe „Actualizare”. Aceasta va adauga descrierea categoriei. Puteti utiliza acest proces pentru a adauga descrieri in toate categoriile dvs.

De asemenea, este posibil sa adaugati descrieri la etichetele dvs. Pentru a face acest lucru, mergeti la Postari -> Etichete. Similar categoriilor, puteti adauga o eticheta noua cu descrieri sau adaugati descrieri la etichetele existente dand clic pe linkul „Editati”.

Nota (Product category / Product tag pages): exact acelasi mecanism exista si pentru etichetele de produse (product_tag), iar descrierea poate fi un avantaj SEO real daca este scrisa ca un mini-ghid al categoriei, nu doar o fraza generica.

Cum se afiseaza descrierea categoriei?

Unele teme WordPress vor afisa automat descrierile categoriilor. Pentru a verifica daca tema dvs. accepta aceasta functie, deschideti o pagina de arhiva a categoriilor. Daca descrierea este acolo, nu va trebui sa faceti nimic.

In cazul in care tema nu afiseaza in mod implicit descrierea categoriei, trebuie sa editati fisierele tematice. Exista trei moduri de a accesa fisierele tematice

Utilizand managerul de fisiere oferit de furnizorul dvs. de gazduire,

Utilizarea unui client FTP (cum ar fi FileZilla) sau

Mergeti la Aspect -> Editor si alegeti fisierul.

Actualizare tehnica (la zi): recomandarea actuala este sa nu modificati direct tema, ci sa folositi un child theme sau un plugin de tip „Code Snippets”. Daca folositi o tema bloc (Site Editor / Full Site Editing), fisierul category.php poate sa nu existe, iar arhivele pot fi controlate din template-uri de blocuri. Totusi, codul de afisare al descrierii ramane valid (doar locul unde il pui difera).

Dupa stabilirea conexiunii, accesati directorul tematic. Inainte de toate, cautati un fisier numit category.php. Daca nu exista un astfel de fisier, cautati fisierul archive.php. Deschideti fisierul si stabiliti unde doriti sa afisati descrierea categoriei. Apoi, puneti urmatorul cod in acea zona a fisierului.

<?php
the_archive_title( '<h1 class="page-title">', '</h1>' );
the_archive_description( '<div class="taxonomy-description">', '</div>' );
?>

Actualizare tehnica (strict): daca doriti sa va asigurati ca descrierea se afiseaza doar pe arhive taxonomy (inclusiv product_cat / product_tag) si mai ales doar pe prima pagina (nu pe /page/2/), folositi varianta conditionata de mai jos.

<?php
the_archive_title( '<h1 class="page-title">', '</h1>' );

// Afiseaza descrierea doar pe pagina 1 a arhivei (nu si pe /page/2/ etc.)
if ( ! is_paged() ) {
    the_archive_description( '<div class="taxonomy-description">', '</div>' );
}
?>

De ce este bine sa NU afisezi descrierile pe /page/2/ incolo: paginile paginate sunt, de obicei, aproape identice ca structura si intentie cu pagina 1, iar descrierea lunga repetata poate crea continut duplicat intern, poate dilua semnalele SEO si poate impinge listingul mai jos (UX slab). Afisarea descrierii doar pe prima pagina pastreaza pagina principala „ancora” (SEO) si lasa paginile paginate sa fie strict pentru navigare in produse.

Acest cod va afisa titlul categoriei si descrierea locatiei dorite. Salvati fisierul si incarcati-l inapoi in dosar. Reincarcati pagina de categorii si ar trebui sa vedeti numele si descrierea categoriei pe pagina.

Afisarea descrierii categoriei pe alte locatii

Cele mai multe teme WordPress vor afisa doar descrierea categoriei in pagina de arhiva a categoriei. Ce se intampla daca doriti sa afisati descrierea in alte locuri? Ei bine, exista cateva solutii pentru a face acest lucru.

Mai intai, puteti afisa o descriere a categoriei specifice cu urmatorul cod

<?php echo category_description(3);  ?>

Nota (Product category / Product tag pages): codul de mai sus este pentru categoria de postari. Pentru WooCommerce (product_cat / product_tag), folositi term_description() cu taxonomy sau obtineti termenul curent. Exemplu generic pe arhiva taxonomy:

<?php
if ( is_tax() && ! is_paged() ) {
    echo term_description();
}
?>

In codul de mai sus, numarul 3 este ID-ul categoriei. Pentru a gasi ID-ul categoriei dorite, accesati Posts > Category. Plasati cursorul peste categoria doriti sa aflati ID-ul din adresa URL afisati in partea de jos a ecranului.

Cand doriti sa afisati descrierea categoriei in postari, trebuie sa utilizati urmatorul cod

<?php
$catID = get_the_category();
echo category_description( $catID[0] );
?>

Si daca doriti sa afisati o lista a categoriilor cu descrierile lor, adaugati urmatorul cod in fisierul functions.php al temei

function wpdean_catlist_desc() {
$string = '<ul>';
$catlist = get_terms( 'category' );
if ( ! empty( $catlist ) ) {
foreach ( $catlist as $key => $item ) {
$string .= '<li>'. $item->name . '<br />';
$string .= '<em>'. $item->description . '</em></li>';
}
}
$string .= '</ul>';
return $string;
}

add_shortcode('wpdean_categories', 'wpdean_catlist_desc');
add_filter('widget_text', 'do_shortcode');

Actualizare tehnica (strict): in WordPress mai nou, pentru widget-uri este recomandat sa folositi filtrul widget_text_content in loc de widget_text, in special daca aveti editor de blocuri in widget-uri.

add_filter('widget_text_content', 'do_shortcode');

Acest cod va adauga urmatorul cod scurt la tema dvs. –

[wpdean_categories]

Puneti acest scurtcod in interiorul unui widget text si plasati widget-ul in care doriti sa afisati descrierile categoriilor.

Nou: doua descrieri optimizate pentru Product category page / Product tag page (SEO + conversii)

Problema reala (mai ales in WooCommerce): daca pui o descriere lunga sus, deasupra listingului de produse, impingi produsele in jos si strici UX. Daca nu pui descriere deloc, pierzi context SEO si sansa de a ghida utilizatorul. Solutia „moderna” este sa folosesti doua descrieri:

  • Descriere scurta (short intro) sus, deasupra listingului – 2-4 randuri, cu intentie clara, keywords naturale, plus un beneficiu sau o promisiune (ce gasesti in categorie si cum alegi).
  • Descriere lunga (full description) jos, dupa listing – un mini-ghid complet (500-1200+ cuvinte, daca are sens), cu intrebari frecvente, criterii de alegere, comparatii, linkuri interne spre subcategorii sau „money pages”.

Unde se seteaza aceste doua descrieri:

  • Descrierea lunga: foloseste campul standard „Description” din product_cat / product_tag.
  • Descrierea scurta: creeaza un camp separat (term meta) pentru „Short description” prin ACF / meta box / custom code, sau foloseste un fragment manual inserat in template.

Afisare in WooCommerce (exemplu strict tehnic, cu hook-uri):

A) Descriere scurta sus (deasupra produselor) – se poate afisa prin hook-ul woocommerce_archive_description (sau woocommerce_before_shop_loop, in functie de tema):

<?php
// Exemplu: afiseaza un "intro" scurt doar pe product_cat / product_tag, doar pe pagina 1
add_action('woocommerce_archive_description', function () {
    if ( is_paged() ) return;
    if ( is_tax('product_cat') || is_tax('product_tag') ) {
        $term = get_queried_object();
        // Inlocuieste cu metoda ta de term meta (ACF / get_term_meta etc.)
        $short = get_term_meta($term->term_id, 'short_description', true);
        if ( $short ) {
            echo '<div class="term-short-description">' . wp_kses_post(wpautop($short)) . '</div>';
        }
    }
}, 5);
?>

B) Descriere lunga jos (dupa listing) – foloseste descrierea standard a termenului, afisata dupa produse, tot doar pe pagina 1:

<?php
add_action('woocommerce_after_shop_loop', function () {
    if ( is_paged() ) return;
    if ( is_tax('product_cat') || is_tax('product_tag') ) {
        $desc = term_description();
        if ( $desc ) {
            echo '<div class="term-long-description">' . $desc . '</div>';
        }
    }
}, 50);
?>

De ce aceasta structura este „optima pentru SEO”: descrierea scurta ajuta la relevanta imediata (context + keywords + intentie), iar descrierea lunga construieste topic coverage (ghid, FAQ, criterii) fara sa sacrifice UX. In plus, descrierea lunga jos este pozitionata natural ca „resursa”, nu ca bloc care impiedica browsingul.

UX/UI: solutii Read More / Show less pentru descrieri lungi

Daca alegi sa afisezi o descriere lunga (mai ales dupa listing), e util sa ai un control de tip Read more / Show less, ca sa nu incarci vizual pagina. Mai jos sunt doua variante strict tehnice.

Varianta 1: CSS + buton (simplu, rapid)

<div class="term-long-description js-collapsible">
  <div class="js-collapsible-content">...descriere lunga...</div>
  <button type="button" class="js-collapsible-toggle">Read more</button>
</div>
<style>
.js-collapsible-content {
  max-height: 220px;
  overflow: hidden;
}
.js-collapsible.is-open .js-collapsible-content {
  max-height: none;
}
</style>

<script>
document.addEventListener('click', function(e){
  if(!e.target.classList.contains('js-collapsible-toggle')) return;
  var wrap = e.target.closest('.js-collapsible');
  if(!wrap) return;
  wrap.classList.toggle('is-open');
  e.target.textContent = wrap.classList.contains('is-open') ? 'Show less' : 'Read more';
});
</script>

Varianta 2: Read more doar daca descrierea depaseste un prag (UX mai curat, fara buton inutil la texte scurte):

<script>
document.querySelectorAll('.js-collapsible').forEach(function(wrap){
  var content = wrap.querySelector('.js-collapsible-content');
  var btn = wrap.querySelector('.js-collapsible-toggle');
  if(!content || !btn) return;
  // daca textul nu depaseste pragul (ex: 220px), ascunde butonul
  if(content.scrollHeight <= 230) {
    btn.style.display = 'none';
    content.style.maxHeight = 'none';
    content.style.overflow = 'visible';
  }
});
</script>

De ce ajuta UX/UI: utilizatorul vede rapid produsele (scopul paginii), dar ai si continut informational complet disponibil pentru cei care chiar vor sa citeasca. In plus, reduce „scroll fatigue” si creste sansele ca utilizatorul sa interactioneze cu listingul.

SEO: de ce e bine ca descrierile sa apara doar pe pagina 1 (nu pe /page/2/ etc.)

Paginile paginate (ex: /category/xyz/page/2/ sau /product-category/xyz/page/2/) sunt, in general, continuari ale aceleiasi liste. Daca repeti descrierea lunga pe fiecare pagina paginata:

  • creezi continut repetitiv intern (partial duplicat) pe mai multe URL-uri;
  • diluezi semnalele SEO ale paginii principale (care ar trebui sa fie „pagina canonică” a categoriei);
  • impingi produsele in jos pe fiecare pagina paginata (UX mai slab);
  • risc mai mare ca Google sa considere paginile paginate „thin” sau redundant structurate.

Solutia tehnica simpla este deja prezentata mai sus: conditionarea cu if ( ! is_paged() ). Pentru WooCommerce, exact acelasi principiu se aplica in hook-uri: return daca is_paged() este true.

DCAgency

Author DCAgency

More posts by DCAgency

Leave a Reply

Suna
Whatsapp