J'ai un module (RSForm Pro) qui s'affiche sur mon site au chargement de la page.
Je souhaite que ce module soit affiché à tous les nouveaux visiteurs du site, mais je ne souhaite pas qu'il soit affiché si des détails ont été ajoutés au formulaire ou si le formulaire a été fermé (à l'aide du [x]).
Quelle est la meilleure façon de faire cela? Cela peut-il être fait en utilisant un cookie?
Vous pouvez voir le module en action ici: http://trade.inapub.co.uk/
Personnellement, je resterais à l'écart des cookies dans ce cas, car ils peuvent être supprimés du navigateur.
Au lieu de cela, vous seriez mieux (Si l'utilisateur doit être connecté en premier):
user_id
user_id
colonne dans la base de données.Si votre utilisateur n'a pas besoin d'être connecté (le formulaire est destiné à un usage public), je vous conseillerais alors d'utiliser une session PHP) et, bien sûr, de respecter les normes de codage de Joomla.
Vous pouvez essayer d'utiliser un plugin appelé Simple Pop-Up . C'est un plugin qui affichera n'importe quoi entre {simplepopup}
balises dans une fenêtre contextuelle modale. Les balises peuvent être ajoutées à des articles, des modules ou à n’importe quelle partie du contenu pouvant être traitées par des plugins. Le plugin peut être configuré pour ne charger qu'une seule fois pour chaque utilisateur.
Je n'ai pas testé cela, mais si votre formulaire est chargé dans un module, vous pouvez essayer ceci:
{simplepopup}{loadposition YouFormPosition}{/simplepopup}
Une autre option pourrait être d'utiliser MetaMod (extension commerciale). Selon leurs tutoriels, vous pouvez faire quelque chose comme ceci:
$c = JRequest::getInt('SeenIt', 0, 'cookie');
if ($c) return; /* if cookie was set, don't show anything, else... */
setcookie( 'SeenIt', 1, time()+60*60*24*365*10, '/' );
return 101; /* return module 101, but only the first time */