Schneller Tipp BEM-Benennung und WordPress-Filter für die Navigation

Die Pflege von CSS ist schwierig, insbesondere in größeren Projekten, die mit einem Team arbeiten. Namenskonventionen können dazu beitragen, dass Ihr CSS lesbarer und leichter zu verwalten ist. In diesem kurzen Tipp wird beschrieben, wie Sie die Benennungsmethodik BEM (Block Element Modifier) ​​in WordPress verwenden.

Content-Management-Systeme wie WordPress geben Standardklassen im Front-End-Markup aus. In WordPress gibt es viele Filter, um diese ausgegebenen Klassen zu ändern.

Wenn Sie direkt in Code eintauchen möchten, finden Sie hier ein Beispielthema von mir. Filter finden Sie in der Datei inc / functions-filters.php.

Was ist BEM??

BEM steht für Block Element Modifier.

"BEM ist eine Methode, mit der Sie wiederverwendbare Komponenten und Code-Sharing in der Front-End-Entwicklung erstellen können."
  • Eine Einführung in die BEM-Methodik

    BEM steht für Block-Element-Modifier und ist eine Möglichkeit, Stil und Markup zu organisieren. Wenn Sie jemals einen Klassennamen wie „header__form-email“ gesehen haben, ist BEM in…
    Josh Medeski
    HTML & CSS

Ich verwende das Navigations-Markup als Beispiel:

  • Block ist eine eigenständige Einheit, die für sich allein sinnvoll ist.
    • .Speisekarte …
  • Element ist Teil eines Blocks und ist semantisch an seinen Block gebunden.
    • .menu__items …
    • .menu__item …
    • .menu__anchor …
  • Modifikator ändert das Aussehen oder Verhalten des Blocks oder Elements.
    • .Menü - primär …
    • .menu__anchor - button …

Vollständige Navigationsmarkierung könnte folgendermaßen aussehen:

Namenskonventionen wie BEM halten Ihre SASS und CSS mit geringer Spezifität flach (was immer schön ist!).

In SASS würden Sie unser Beispiel so gestalten:

.menu … & __ items … & __ item … & __ Anker … & __ Anker - Button …

Das kompilierte CSS würde so aussehen:

.menu … menu__items … menu__item … menu__anchor … menu__anchor - button … 

Aber wie können wir die in WordPress verwendeten Navigationsklassen ändern??

Verwenden von WordPress-Filtern zum Ändern von Navigationsklassen

Verwenden der eingebauten Funktion von WordPress wp_nav_menu (), Sie können Klassen für diktieren