Sfat rapid Filtre BEM și WordPress pentru navigare

Menținerea CSS este dificilă, mai ales în proiectele mai mari care lucrează cu o echipă. Convențiile de nomenclator vă pot ajuta CSS să fie mai ușor de citit și mai ușor de întreținut. În acest sfat rapid vom analiza cum să folosim metodologia de numire BEM (Block Element Modifier) ​​în WordPress.

Sistemele de gestionare a conținutului cum ar fi clasele implicite de ieșire WordPress în marcarea front-end. În WordPress există o mulțime de filtre pentru a modifica aceste clase de ieșire.

Dacă doriți să vă aruncați direct în cod, aici este o temă de exemplu a mea; filtrele pot fi găsite în fișierul inc / functions-filters.php.

Ce este BEM?

BEM reprezintă elementul modificator de bloc.

"BEM este o metodologie care vă ajută să creați componente reutilizabile și partajarea codurilor în dezvoltarea front-end".
  • O introducere în metodologia BEM

    BEM reprezintă elementul de blocare a elementelor și este o modalitate de organizare a stilului și a marcajului. Dacă ați văzut vreodată un nume de clasă ca "header__form-email" care este BEM în ...
    Josh Medeski
    HTML și CSS

Voi folosi marcajul de navigare ca exemplu:

  • bloc este o entitate autonomă care are un sens semnificativ pe cont propriu.
    • .meniul …
  • Element face parte dintr-un bloc și este legat semantic de blocul său.
    • .menu__items ...
    • .articol din meniu …
    • .menu__anchor ...
  • Modificatorul modifică aspectul sau comportamentul blocului sau al elementului.
    • .meniu - primar ...
    • .menu__anchor - buton ...

Marcajul de navigare complet ar putea arăta astfel:

Naming convenții precum BEM păstrează dvs. SASS și CSS plat cu specificitate scăzută (care este întotdeauna frumos!).

În SASS, ne-ați face exemplul astfel:

.meniul ... & __ elemente ... & __ element ... & __ anchor ... & __ ancora - buton ...

CSS-ul compilat ar arăta astfel:

.meniul ... menu__items ... menu__item ... menu__anchor ... meniu_anchor - buton ... 

Dar cum putem modifica clasele de navigație utilizate în WordPress?

Folosind filtrele WordPress pentru a schimba clasele de navigare

Folosind funcția built-in a WordPress wp_nav_menu (), poți dicta cursuri pentru