Załóżmy, że musimy zrealizować następujący plan:
Na stronie
Portfolio
wykorzystującej plik szablonupage-portfolio.php
tło ma być koloru#003366
.
Plan idealny w swej prostocie, ale czy wykonanie będzie równie proste?
Sposobem na realizację powyższego zadania może być dodanie klasy do elementu body
, która zmieni kolor tła. Świetnie! Zatem do dzieła.
Aby dodać nazwę klasy do elementu body
na stronie wykorzystującej określony szablon należy w pliku functions.php
dodać następujący fragment kodu:
add_filter('body_class', function ($classNames) {
if (is_page_template('page-portfolio.php')) {
$classNames[] = 'body__page--portfolio';
}
return $classNames;
}, 10, 1);
Co się tutaj dzieje?
- Funkcja
is_page_template()
sprawdza czy aktualnie wyświetlana strona wykorzystuje szablon umieszczony w plikupage-portfolio.php
(podajemy lokalizację pliku względem głównego katalogu motywu). - Jeśli tak jest, to do listy nazw klas dodawanych do znacznika
body
zostaje dodana określona przez nas nazwa klasy (tutaj:body__page--portfolio
).
Pamiętajcie by odpowiednio ostylować nowo dodaną klasę!