Bonjour j'ai développé une fonction qui me permet selon la page ou je me trouve de changer la classe d'un élément la voici

<?php  
                $a = idd();
                function idd() {
                    if ( is_page( '13' ) ){
                      return "LLGH5" ;
                    }
                    else if ( is_page( '354' ) ) {
                      return "LLGH6" ;
                    }
                    else if ( is_page( '352' ) ) {
                        return "LLGH4" ;
                      }
                      else if ( is_page( '350' ) ) {
                        return "LLGH3" ;
                      }
                      else if ( is_page( '348' ) ) {
                        return "LLGH2" ;
                      }
                      else if ( is_page( '346' ) ) {
                        return "LLGH1" ;
                      }
                    else { return "false";
                    }
                }
                echo $a;
                ?>
               
<script>
                    var idpage = <?PHP echo $a;?> ;
                    function loadlogo(){
                        if( idpage == LLGH5){
                            document.getElementById("LLGH5").setAttribute("class", "LLGHSTATIC");}
                        else if( idpage == LLGH6){
                            document.getElementById("LLGH6").setAttribute("class", "LLGHSTATIC");}
                        else if( idpage == LLGH4){
                            document.getElementById("LLGH4").setAttribute("class", "LLGHSTATIC");}
                        else if( idpage == LLGH3){
                            document.getElementById("LLGH3").setAttribute("class", "LLGHSTATIC");}
                        else if( idpage == LLGH2){
                            document.getElementById("LLGH2").setAttribute("class", "LLGHSTATIC");}
                        else if( idpage == LLGH1){
                            document.getElementById("LLGH1").setAttribute("class", "LLGHSTATIC");}
                            else{
                                return false;
                            }
                    }
                </script>

le problème étant que la fonction fait le changement pour les id: LLGH6; LLGH5; LLGH4, mais pas les autres j’ai utilisé le echo $a pour voir si la valeur été la même que celle utilisé pour la fonction java script est c'est bon. je ne comprend pas pourquoi le changement ne s'applique pas sur les autres id.
Quelqu'un aurait une idée?
Bonne journée a tous. voici un lien vers la page :bc911153a966.ngrok.io/poireaux-primeur
Modifié par snotra (11 Jun 2020 - 10:25)
Modérateur
Salut,


Pour moi le php retourne bien LLGH1, LLGH2 etc..

Il y a un soucis au niveau de l'application de la class.

Pour le if il vaudrait mieux faire :
if( idpage === 'LLGH5')

Parceque les variables LLGH5 etc n'existent pas, ce sont des string que tu manipules.

et pour la création de la variable aussi :
var idpage = '<?PHP echo $a;?>' ;



Au passage pour gérer les classes tu peu utiliser classList plutôt que setAttribute c'est un peu plus souple.
https://www.alsacreations.com/article/lire/1498-lapi-classlist.html
Modifié par _laurent (11 Jun 2020 - 11:00)
Meilleure solution
Merci beaucoup pour la réponse sa marche.
Modifié par snotra (11 Jun 2020 - 13:45)