Hoe voeg ik een body-klasse toe aan alle interne paginas behalve de startpagina

Ik wil een klasse aan de body-tag toevoegen aan alle paginas BEHALVE de startpagina. Op dit moment heb ik.

<?php body_class("interior"); ?>

Maar het voegt “interieur” toe aan ALLE paginas, inclusief de startpagina.

Wat is de beste standaardmanier om een klasse aan de body-tag toe te voegen?

Antwoord

Probeer het:

<?php $class = ! is_home() ? "interior" : ""; body_class( $class ); ?> 

Of dit:

<?php body_class( ! is_home() ? "interior" : "" ); ?> 

Reacties

  • Bedankt voor je antwoord! het voegt echter nog steeds een interieur toe aan de ' home ' pagina.
  • Vreemd genoeg werkte hier.
  • Probeer het: < body <? php body_class (! is_home () & &! is_front_page ()? " interieur ": " "); ? > >
  • Ik heb mijn leesinstellingen aangepast naar statisch en heb geen paginas geselecteerd & het werkte.

Antwoord

Het filter body_class kan hiervoor worden gebruikt.

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; } 

Reacties

  • erg leuk. Nog een reden om header.php niet naar de map met onderliggende sjablonen te kopiëren als ik ' geen aanvullende wijzigingen aan het bestand hoef aan te brengen.

Answer

Gebruik het body_class filter om een klasse toe te voegen aan de body-tag in WordPress.

Voeg de onderstaande code toe aan uw functions.php-bestand.

Voeg klasse toe aan de body-tag voor alle paginas.

 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; } 

Startpagina uitsluiten

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; } 

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *