Î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.
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.
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.
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.
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.
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ă.
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ă.
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 $;
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 $;
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
.
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.
În acest tutorial mic am abordat două metode de adăugare la clasa corpului WordPress:
body_class
funcționează într-o temă,Am inclus, de asemenea, adăugarea claselor corpului în mod condiționat și eliminarea clasei, dacă trebuie vreodată să faceți în dezvoltarea viitoare.