Lorsque les utilisateurs visitent une page de mon site, j'ai écrit du code pour définir une valeur:
if(window.location.href.indexOf("promotionpage") > -1) {
Cookies.set('landingpage', 'kent', { expires: 30, path: '/promotionpage' });
}
Cela fonctionne très bien et le cookie est en cours d’installation. En fonction de la définition du cookie ci-dessus, je souhaite ensuite ajouter une position de module à la page index.php. J'ai écrit ce qui suit pour savoir si le cookie est défini et inclure ensuite une position de module, mais cela ne fonctionne pas:
<?php
if(isset($_COOKIE['kent'])){ ?>
<jdoc:include type="modules" name="kentModal" style="none" />
<?php } ?>
Vous définissez le cookie via JS avec le nom suivant: landingpage
MAIS vous vous enregistrez PHP pour un nom de cookie: kent
.
Juste réparer ça;)
Votre Cookie-JS-Plugin fonctionne comme:
Cookies.set('name', 'value');
La façon dont vous utilisez les cookies semble fausse, sauf si vous utilisez une bibliothèque ici.
Selon quirksmode, vous utiliseriez quelque chose comme:
if(window.location.href.indexOf("promotionpage") > -1) {
document.cookie = 'landingpage=kent; expires=<?php echo date('D, j M Y H:i:s', time()+30);?> path=/promotionpage');
}
Cette question contient une bonne liste de bibliothèques JavaScript permettant de gérer les cookies plus facilement https://stackoverflow.com/q/4825683/123594
Quelques autres commentaires: