Adăugarea la clasa de corp în WordPress

În acest tutorial scurt, ne uităm la clasa corpului WordPress și cum îl putem manipula folosind apelurile core API.

Mai exact, acoperim adăugarea de clase corporale, eliminarea clasei corpului, adăugarea condiționată a claselor corporale și a unor cazuri de utilizare.

Clasa corpului: ce poate fi folosit pentru?

corp clasa în WordPress este o clasă sau o serie de clase care sunt aplicate elementului corpului HTML. Acest lucru este util pentru aplicarea stilurilor unice pe diferite zone ale site-ului WordPress ca corp clasele pot fi adăugate condiționat. 

WordPress conține un număr de clase de corpuri implicite care sunt acoperite în acest articol. 

Adăugarea la clasa corporală

Există câteva metode disponibile pentru adăugarea de noi clase de corp în WordPress. Acest tutorial va cuprinde adăugarea clasei corpului într - o temă (de obicei definită în header.php) folosind body_class funcția și adăugarea de clase utilizând un filtru.

Editarea temei: Transmiterea unei valori de clasă corporală

Acesta este un mod foarte simplu de a adăuga clase de corp și este util mai ales dacă creați o temă. Clasa corpului este în mod normal inclusă într-o temă folosind următorul cod:

>

Pentru a adăuga propria clasă la acest lucru, puteți să transmiteți un argument în funcție, cum ar fi:

>

Aceasta ar adăuga o clasă de corp clasa mea pe fiecare pagină a site-ului dvs. WordPress.

Adăugarea de clase de caroserie multiple

Pot exista momente când doriți să adăugați mai multe clase de corpuri. Acest lucru poate fi realizat folosind o matrice simplă:

> 

Aceasta ia toate clasele în matrice și le transmite la body_class funcţie.

Adăugarea condiționată a unei clase de caroserie

Este posibil să doriți, de asemenea, să adăugați în mod condiționat o clasă de corp. Acest lucru este ușor cu câteva PHP simple. Acest exemplu folosește metoda condițională WooCommerce din is_shop () :

Notă: WooCommerce adaugă deja o clasă bazată pe acest lucru, deci rețineți că acesta este doar un exemplu.

Ceea ce face codul de mai sus, verifică faptul că prima funcție este returnarea adevărată, dacă este adevărată, atunci clasa corpului are este-woocommerce-shop adăugat la acesta; altfel, dacă nu este adevărat, atunci se afișează doar clasa de corp implicită.

Adăugarea unei clase de corp prin filtru

Este posibil să utilizați un filtru WordPress pentru a adăuga și o clasă de corp. Această metodă menține codul tematic mai curat și este util în special dacă doriți să adăugați o clasă de corp dintr-un plugin. Acest cod poate merge fie în temele tale functions.php sau în plugin-ul dvs..

add_filter ('body_class', 'my_body_classes'); funcția my_body_classes ($ classes) $ classes [] = 'class-name'; returnează clase de $; 

Aceasta adaugă o clasă (sau clase, în funcție de implementarea dvs.) la matrice și le returnează.

Adăugarea de clase de caroserie multiple prin filtru

Pentru a adăuga mai multe clase la filtru, trebuie doar să adăugați o altă linie care adaugă o altă valoare la matrice:

add_filter ('body_class', 'my_body_classes'); funcția my_body_classes ($ classes) $ classes [] = 'class-name'; $ classes [] = 'clasă-nume-două'; returnează clase de $; 

Adăugarea condiționată a unei clase de corp prin filtrare

Condițiile pot fi de asemenea utilizate într-un filtru. Luând același exemplu pe care l-am folosit mai devreme, putem obține același efect:

add_filter ('body_class', 'my_body_classes'); funcția my_body_classes ($ classes) if (is_shop ()) $ classes [] = 'class-name'; $ classes [] = 'clasă-nume-două';  returnează clase $; 

Adăugarea unei clase de caroserie pe baza șablonului de pagină

Implicit, WordPress adaugă o clasă de corp pentru șablonul de pagină, dar dacă sunteți un dezvoltator de front-end și aveți convenții de numire pentru CSS, atunci poate doriți să schimbați această. 

De exemplu, un șablon de pagină numit "halfhalf" ar avea o clasă de corp Pagina-șablon de pagină-halfhalf-php - nu grozav.

Deci, să adăugăm o nouă clasă, folosind un filtru și o etichetă condiționată WordPress:

add_filter ('body_class', 'halfhalf_body_class'); funcția halfhalf_body_class ($ classes) if (is_page_template ('page-halfhalf.php')) $ classes [] = 'jumătate-pagină';  returnează clase $; 

Aceasta va adăuga clasa corpului halfhalf-page dacă este șablonul de pagină Pagina-halfhalf.php.

Eliminarea unei clase de caroserie

Este puțin probabil că veți dori să eliminați o clasă de corp, deoarece nu sunteți obligat să le folosiți și vă adaugă foarte puțin marcajul. Acestea fiind spuse, este posibil să faceți acest lucru folosind același lucru body_class filtru.

add_filter ('body_class', 'adjust_body_class'); funcția adjust_body_class ($ classes) foreach ($ clase ca $ key => value value) if ($ value == 'woocommerce-page') unset ($ classes [$ key]);  returnează clase $; 

Credit: acest cod este modificat din acest articol.

În acest exemplu, introducem prin matricea de nume de clasă, dezactivând numele clasei woocommerce-page dacă există, și apoi returnează clasele, cu excepția celor care au fost eliminate.

Sunt Toți Oamenii!

În acest tutorial mic am abordat două metode de adăugare la clasa corpului WordPress:

  1. Prin utilizarea funcției body_class funcționează într-o temă,
  2. Și folosind un filtru. 

Am inclus, de asemenea, adăugarea claselor corpului în mod condiționat și eliminarea clasei, dacă trebuie vreodată să faceți în dezvoltarea viitoare.

Cod