Personnalisation par ajout de body_class pour certains articles de catégories (Créer un compte)

  • WordPress :4.7
  • Statut : non résolu
2 sujets de 1 à 2 (sur un total de 2)
  • Auteur
    Messages
  • #1614823
    aglae361
    Participant
    Initié WordPress
    44 contributions

    Bonjour tous 🙂

    Ma configuration WP actuelle

    • Thème utilisé : Genesis Sample
    • Nom de l’hébergeur : wpengine
    • Adresse du site : pas encore en ligne

     

    L’idée : le site sur lequel je travail possédé plusieurs catégories (15 environs).
    Parmi ces 15 catégories, 3 catégories spécifiques doivent avoir un surlignement des titres au niveau des articles affiché seul (<span class= »show-template-name »>single.php</span>) afin de les différencier des autres.

    Comme chacune de ces 3 catégories possède un code couleur, le surlignement doit être différent selon l’article affiché et la catégorie a laquelle il appartient. Ensuite il me restera plus qu’a faire un peu de css

    Mon code : J’ai mis le code suivant dans mon fichier functions.php

    add_filter( 'body_class', 'al_news_class' );
    function al_news_class( $classes ) {
    if ( in_category(25) ) {
    $classes[] = 'couljaune';
    return $classes;
    }
    elseif ( in_category(20) ) {
    $classes[] = 'coulvert';
    return $classes;
    }
    elseif ( in_category(26) ) {
    $classes[] = 'coulviolet';
    return $classes;
    }

    }
    functions.php

    Visiblement cela ne plait pas à notre ami wordpress puisqu’il me dit l’erreur suivante :  Catchable fatal error: Argument 1 passed to genesis_custom_body_class() must be of the type array, null given in I:srclabo-genesismonsitewp-contentthemesgenesislibstructurelayout.php on line 55

    Le fichier en question affiche le code suivant ligne 55 :

    add_filter( 'body_class', 'genesis_custom_body_class', 15 );
    /**
    * Add custom field body class(es) to the body classes.
    *
    * It accepts values from a per-post or per-page custom field, and only outputs when viewing a singular page.
    *
    * @since 1.4.0
    *
    * @param array $classes Existing body classes.
    * @return array Amended body classes.
    */
    function genesis_custom_body_class( array $classes ) {

    $new_class = is_singular() ? genesis_get_custom_field( '_genesis_custom_body_class' ) : null;

    if ( $new_class )
    $classes[] = $new_class;

    return $classes;

    }
    layout.php

    Mais je comprend pas pourquoi ?
    J’ai recherché sur internet mais sans succès. J’ai essayé de le modifier et de le triturer dans tous les sens mais là je me perd complétement

    Il est vrai que je suis encore novice en programmation.
    Un coup de patte serait bienvenu

     

    #1614960
    aglae361
    Participant
    Initié WordPress
    44 contributions

    Bonjour tous

    Personne n’a d’idée ?

     

2 sujets de 1 à 2 (sur un total de 2)
  • Vous devez être connecté pour répondre à ce sujet.