Environnement : SPIP 2.0.3, et soit site remote hébergé par phpnux, soit site local (wampserver windows Vista ou xp sp3).
Pour rendre le site temporairement fermé, accessible à une liste admin, auteurs, visiteurs préétablie, j’avais « inventé » le moyen suivant :
<div id="login2" style="display:none;height:auto;">
<B_articles>
{... Traitement articles avec BOUCLE(ARTICLES) ...}
</B_articles>
<!-- Fin inc-HistoAna$$ -->
</div>
<div id="login" style="display:block;">
[ (#LOGIN_PUBLIC) ]
[ (#SESSION{statut}|=={0minirezo}|oui)
[ (#INCLURE{fond=inc-nodisplay_sommaire}) ] ]
[ (#SESSION{statut}|=={1comite}|oui)
[ (#INCLURE{fond=inc-nodisplay_sommaire}) ] ]
[ (#SESSION{statut}|=={6forum}|oui)
[ (#INCLURE{fond=inc-nodisplay_sommaire})] ]
</div>
Pas de problème majeur : si l’utilisateur est identifié comme membre des groupes admin, auteur ou visiteurs enregistrés, inc-nodisplay_sommaire s’exécute c’est-à-dire qu’une fonction javascript bascule le mode display des div login et login2, laissant apparaître le contenu du membre de page inclus dans la div login2.
Enfin, pas de problème avec toutes les pages du site en développement, sauf quand il y a appel à la page forum (répondre à : article, brève, etc.), car alors la contradiction avec #LOGIN_PUBLIC devient flagrante : boucle sur redirection.
en enlevant la div id="login" (qui contient la balise #LOGIN_PUBLIC) de la page, les réponses aux forums redeviennent normales.
Cependant, je ne suis pas entièrement satisfait de cette observation très empirique et je souhaite une explication plus circonstanciée.