Cum să obțineți categoria actuală de produse WooCommerce

Publicat: 2021-05-25

WooCommerce Obțineți categoria actuală de produs În această postare, vă împărtășesc WooCommerce pentru a obține fragmentul de cod al categoriei de produse actuale și vă explic cum puteți utiliza acest cod pentru a obține categoria curentă de produse.

Dacă sunteți un dezvoltator WooCommerce sau doar personalizați WooCommerce ca utilizator obișnuit, abilitatea de a obține categoria curentă de produse din baza de date WooCommerce vă poate ajuta să creați o varietate de opțiuni de afișare pentru produsele dvs.

De asemenea, puteți obține categoria curentă de produs atunci când doriți să creați caracteristici specifice pentru experiența clientului WooCommerce, cum ar fi redirecționarea WooCommerce după finalizarea comenzii, pe baza categoriei curente .

Am demonstrat acest lucru în tutorialul anterior despre cum să obțineți numele actual al categoriei de produse WooCommerce.

WooCommerce Obțineți categoria actuală de produs

În primul rând, presupun că știți cum vă descurcau dezvoltarea WooCommerce și că căutați doar un fragment de cod rapid pentru a obține categoria actuală de produse.

Dacă sunteți un începător complet, poate doriți să verificați majoritatea celor peste 1000 de postări pe care le-am împărtășit înainte despre dezvoltarea WooCommerce aici – tutoriale WooCommerce.

Acum să ne concentrăm asupra elementelor de bază pentru obținerea categoriei actuale de produse WooCommerce. Mai întâi trebuie să înțelegeți că produsele WooCommerce sunt doar tipuri de postări personalizate - din perspectiva dezvoltării WordPress.

Deci, le puteți interoga pe ei și categoriile de produse în același mod în care construim interogări pentru postările obișnuite din WordPress.

Produsele WooCommerce sunt tipuri de postări personalizate cu categorii ca una dintre taxonomiile lor.

Deoarece acum înțelegem cum funcționează categoriile WooCommerce sub capotă, vom folosi funcția de bază WordPress get_the_terms() pentru a obține categoria curentă de produse WooCommerce din baza de date.

Dar mai întâi, să avem o privire de ansamblu rapidă asupra modului în care funcționează funcția WordPress get_the_terms()!

Funcția WordPress pentru a obține categoria curentă – get_the_terms ()

Această funcție este concepută pentru a ne obține pur și simplu termenii unei taxonomii pe care o dorim și pentru a obține ceea ce dorim, trebuie să dăm acestei funcție un parametru.

Modul de a obține ceea ce ne dorim de la această funcție este să îi dăm ID-ul postării din care vrem categoriile.

Deci, într-un rezumat rapid, această funcție, ia în doi parametri ID-ul sau obiectul și numele taxonomiei.

Înainte să ne pierdem, permiteți-mi să vă împărtășesc un tabel scurt rezumat, urmat de un exemplu simplu pentru a vă ajuta să înțelegeți cum funcționează această funcție!

Parametru Descriere
$post Acest lucru este necesar pentru ca această funcție să funcționeze și este pur și simplu ID-ul postării sau obiectul pentru care dorim să obținem datele - în acest caz ar fi ID-ul postării curente, deoarece dorim să obținem categoria PRODUS CURENT WooCommerce
$taxonomie Acest lucru este necesar și pentru ca această funcție să funcționeze și este numele taxonomiei

WooCommerce Obțineți categoria actuală de produs

WooCommerce Obțineți categoria actuală de produs Să presupunem că acum dorim să obținem categoria curentă de produse, așa cum puteți vedea în imaginea de mai sus; avem asta ca exemplu.

Astfel, putem obține ID-ul curent al produsului utilizând obiectul de postare global WordPress $post. Acest lucru va returna ID-ul împreună cu celelalte date postate

$post (WP_Post) Obiectul postării pentru postarea curentă. Obiect descris în Class Reference/Wp_posts.

Odată ce avem ID-ul, putem trece ID-ul funcției get_the_terms() împreună cu taxonomia și vom obține cu succes categoria de produs curentă.

Taxonomia pentru categoria de produse WooCommerce este – product_cat, astfel încât acum putem transmite ID-ul curent al produsului împreună cu product_cat pentru a obține toate categoriile asociate cu produsul curent. Deci putem face asta cu acest cod:


global $post;

$terms = get_the_terms( $post->ID, 'product_cat' );

$nterms = get_the_terms( $post->ID, 'product_tag'  );

foreach ($terms  as $term  ) {

$product_cat_id = $term->term_id;

$product_cat_name = $term->name;

break;

}

WooCommerce Obțineți categoria curentă de produs pas cu pas (3 pași principali)

Deci, aceștia sunt pașii pe care i-am făcut pentru a obține categoria actuală de produse în WooCommerce:

  1. Mai întâi obțineți ID-ul curent al produsului
  2. Transmiteți ID-ul produsului împreună cu taxonomia product_cat la funcția get_the_terms () ca cei doi parametri.
  3. Pasul 2 returnează o matrice cu toate detaliile. Folosim bucla foreach pentru a parcurge datele și obținem numele categoriei sau orice alt detaliu pe care îl dorim din categoria curentă de produs.

Acum puteți continua și imprima sau utiliza categoria în orice altă logică, așa cum am subliniat exemplul de redirecționare WooCommerce după finalizarea comenzii pe bază de categorie .

Am adăugat acest cod într-un cârlig la capul site-ului meu exemplu și puteți vedea din imaginea de mai jos că categoria este afișată cu succes: WooCommerce Obțineți categoria actuală de produs

Fragmentul de cod complet pe care l-am adăugat la tema personalizată Storefront pentru a afișa categoria în antetul WordPress, așa cum se arată în imaginea de mai sus, este după cum urmează:


add_action('wp_head', 'get_current_product_category');

function get_current_product_category(){

global $post;

$terms = get_the_terms( $post->ID, 'product_cat' );

$nterms = get_the_terms( $post->ID, 'product_tag'  );

foreach ($terms  as $term  ) {

$product_cat_id = $term->term_id;

$product_cat_name = $term->name;

break;

}

echo $product_cat_name;

}

Concluzie

În această postare am evidențiat modalitatea pas cu pas de a obține produsul curent din categoria WooCommerce. După cum ați văzut în exemplul de mai sus, trebuie pur și simplu să cunoașteți ID-ul curent al produsului și puteți utiliza funcția implicită WordPress pentru a obține termenii și pentru a vă opune categoria curentă WooCommerce.

Articole similare