Quote Originariamente inviata da KillerWorm Visualizza il messaggio
Capisco, diciamo che siamo borderline. Date però le possibili interconnessioni tra le tecnologie usate, e il fatto che tu voglia compararne le possibili soluzioni, avrei trattato l'argomento in un'unica discussione, sarebbe comunque accettabile l'OT. Ad ogni modo l'amministratore avrà valutato di gestirla così perciò nessun problema.


Bisognerebbe verificare. Condivido il consiglio di alka, metti qualche console.log() per monitorare cosa sta avvenendo (premi F12 per aprire la console).

codice:
console.log('location.href:', window.location.href); // verifica se il valore di location.href è quello aspettato 
if (window.location.href == 'http://XXX') {
  const elemento = document.querySelector('#YYY');
  console.log('elemento:', elemento); // verifica che l'elemento selezionato non sia undefined, perciò sia presente già nel DOM 
  elemento.classList.add('classZZZ');
};
Se l'elemento non è presente significa che quello script è eseguito prima che il DOM sia disponibile.
Se non sai dove venga incluso e non puoi decidere dove inserirlo, una soluzione può essere quella di eseguirlo all'interno dell'evento DOMContentLoaded dell'oggetto window.

codice:
window.addEventListener('DOMContentLoaded', function (){
  if (window.location.href == 'http://XXX') {
    document.querySelector('#YYY').classList.add(classZZZ);
  }; 
});


Fai sapere.
Innanzitutto grazie ancora per l'attenzione ed il supporto.

Testerò la funzione log di cui mi avete parlato, perché sembra una cosa davvero utile, a prescindere dalla specifica problematica in oggetto.

Con particolare riferimento a quest'ultima, alla fine ho risolto lato PHP (opzione che mi sembrava in generale preferibile), con una semplicissima riga di codice da inserire all'interno del div a cui volevo aggiungere la classe:

codice:
<?php echo(is_page(49) ? 'MIA_CLASSE' : ''); ?>
La soluzione mi è stato consigliata da un utente del forum nell'altro topic aperto sull'argomento.

Grazie ancora!