Rask Tips BEM-navn og WordPress-filtre for navigasjon

Opprettholde CSS er vanskelig, spesielt i større prosjekter som arbeider med et lag. Navngivningskonvensjoner kan hjelpe CSS til å være mer lesbare og enklere å vedlikeholde. I dette raske tipset ser vi på hvordan du bruker BEM (Block Element Modifier) ​​navngivningsmetodikk i WordPress.

Innholdsstyringssystemer som WordPress-utgangsklasser i front-end-markeringen. I WordPress er det mange filtre for å endre disse utgitte klassene.

Hvis du vil dykke direkte inn i koden, er dette et eksempel på meg; filtre finnes i inc / functions-filters.php-filen.

Hva er BEM?

BEM står for Block Element Modifier.

"BEM er en metode som hjelper deg med å lage gjenbrukbare komponenter og kodedeling i frontend-utvikling."
  • En introduksjon til BEM-metoden

    BEM står for Block-Element-Modifier og er en måte å organisere stil og markering på. Hvis du noen gang har sett et klassenavn som "header__form-email", er det BEM i ...
    Josh Medeski
    HTML og CSS

Jeg bruker navigasjonsmarkering som et eksempel:

  • Blokkere er en frittstående enhet som er meningsfylt på egen hånd.
    • .Meny …
  • Element er en del av en blokk og er semantisk knyttet til sin blokk.
    • .menu__items ...
    • .menu__item ...
    • .menu__anchor ...
  • modifier endrer blokk eller elementutseende eller oppførsel.
    • .meny - primær ...
    • .menu__anchor - knapp ...

Full navigasjonsmarkering kan se slik ut:

Navngivningskonvensjoner som BEM behold din SASS og CSS flat med lav spesifisitet (som alltid er fint!).

I SASS ville du style vårt eksempel som dette:

.meny ... & __ elementer ... & __ element ... & __ anker ... og __ anker - knapp ...

Den sammensatte CSS vil se slik ut:

.meny ... menu__items ... menu__item ... menu__anchor ... menu__anchor - knapp ... 

Men hvordan kan vi endre navigasjonsklassene som brukes i WordPress?

Bruke WordPress-filtre til å endre navigasjonsklasser

Bruke WordPress 'innebygde funksjon wp_nav_menu (), du kan diktere klasser for