Jeg vil legge til en klasse i kroppskoden på alle sidene UNNTAT hjemmesiden. Akkurat nå har jeg det.
 <?php body_class("interior"); ?> 
Men det legger til «interiør» til ALLE sider inkludert hjemmesiden.
Hva er den beste standarden for å legge til en klasse i kroppskoden?
Svar
Prøv det:
<?php $class = ! is_home() ? "interior" : ""; body_class( $class ); ?> 
Eller dette:
<?php body_class( ! is_home() ? "interior" : "" ); ?> 
Kommentarer
- Takk for svaret! men det gir fortsatt interiør til ' hjem ' siden også.
 - Merkelig, jobbet her.
 - Prøv det: < body <? php body_class (! is_home () & &! is_front_page ()? " interiør ": " "); ? > >
 - Jeg justerte leseinnstillingene mine til statiske og har ikke valgt noen sider & det fungerte.
 
Svar
 Filteret   body_class   kan brukes til dette. 
add_filter( "body_class", "body_class_wpse_85793", 10, 2 ); function body_class_wpse_85793( $classes, $class ) { // This one overrides all original classes if( is_home() ) $classes = array( "interior" ); // This one simply adds a new class //if( is_home() ) // $classes[] = "interior"; return $classes; } 
Kommentarer
- veldig hyggelig. En annen grunn til ikke å kopiere header.php ned i min malmalkatalog hvis jeg ikke ' ikke trenger å gjøre flere endringer i filen.
 
Svar
 Bruk body_class filteret for å legge til en hvilken som helst klasse i kroppskoden på WordPress. 
Legg til koden nedenfor i funksjonsfilen din.
Legg til klasse i body-taggen for alle sidene.
 add_filter("body_class", "wp_body_class"); function wp_body_class($class) { $class[] = "my-custom-class"; // Add your class name here. Multiple class names can be added "classname1 classname2". return $class; } 
Ekskluder hjemmesiden
if (!is_front_page() ) { // exclude home or any other page. add_filter("body_class", "wp_body_class"); } function wp_body_class($class) { $class[] = "my-custom-class"; // Add your class name here. Multiple class names can be added "classname1 classname2". return $class; }