Snabbtips BEM Naming och WordPress-filter för navigering

Att upprätthålla CSS är svårt, särskilt i större projekt som arbetar med ett lag. Namngivningskonventioner kan hjälpa din CSS att vara mer läsbar och lättare att underhålla. I denna snabba tips ser vi på hur man använder namnet för BEM (Block Element Modifier) ​​i WordPress.

Content Management-system som WordPress-utgångsstandardklasser i front-end-markup. I WordPress finns det många filter för att ändra dessa utmatade klasser.

Om du vill dyka direkt i koden, här är ett exempel på mig; filter finns i inc / functions-filters.php-filen.

Vad är BEM?

BEM står för Block Element Modifier.

"BEM är en metod som hjälper dig att skapa återanvändbara komponenter och koddelning i front-end-utveckling."
  • En introduktion till BEM-metoden

    BEM står för Block-Element-Modifier och är ett sätt att organisera stil och markup. Om du någonsin har sett ett klassnamn som "header__form-email" så är det BEM i ...
    Josh Medeski
    HTML & CSS

Jag använder navigationsmarkering som ett exempel:

  • Blockera är en fristående enhet som är meningsfull på egen hand.
    • .meny ...
  • Element är en del av ett kvarter och är semantiskt knuten till dess kvarter.
    • .menyval …
    • .menu__item ...
    • .menu__anchor ...
  • modifier ändrar block eller elementets utseende eller beteende.
    • .meny - primär ...
    • .menu__anchor - knapp ...

Full navigationsmarkering kan se ut så här:

Namngivningskonventioner som BEM håller din SASS och CSS platt med låg specificitet (vilket är alltid trevligt!).

I SASS skulle du utforma vårt exempel så här:

.meny ... & __ objekt ... & __ objekt ... & __ ankare ... & __ ankare - knapp ...

Den sammanställda CSS skulle se ut så här:

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

Men hur kan vi ändra navigerings klasserna som används i WordPress?

Använda WordPress-filter för att ändra navigerings klasser

Använda WordPress 'inbyggd funktion wp_nav_menu (), du kan diktera klasser för