ho aperto due topic in sezioni diverse (php e js) proprio perché volevo comparare i due metodi per capire quale fosse migliore.
Pensavo che aprendo un solo topic che parlasse sia di php sia di js sarei andata necessariamente in parte fuori tema.
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.
non so poi se WordPress lo infili nell’head o alla fine del body
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.