Donc, on crée des répertoires comme ceci :
- squelettes/0minirezo
- squelettes/6forum
- Et pour ceux qui ne sont pas connectés : squelettes/defaut
Et dans votre cas, on ne prend pas en compte les rédacteurs : "1comite". De ce fait, ils seront redirigés vers le squelettes defaut
On peut regarder le statut du visiteur grâce à $GLOBALS
On peut imaginer un code comme ça dans config/mes_options.php :
<?php
# Choix du squelette selon le statut
# 0minirezo (administrateur ou administrateur restreint),
# 1comite (rédacteur),
# 6forum (visiteur)
$liste_skels = array(
'0minirezo',
'6forum'
);
if (isset($GLOBALS['visiteur_session']['statut']) and $statut = $GLOBALS['visiteur_session']['statut']) {
if (in_array($statut,$liste_skels)) {
setcookie('skel', $_COOKIE['skel'] = $statut, NULL, '/');
}
else {
setcookie('skel', $_COOKIE['skel'] = 'defaut', time()-3600*24, '/');
}
} else {
setcookie('skel', $_COOKIE['skel'] = 'defaut', time()-3600*24, '/');
}
if (isset($_COOKIE['skel']) AND in_array($_COOKIE['skel'],$liste_skels) AND is_dir(_DIR_RACINE.'squelettes/' . $_COOKIE['skel'])){
$dossier_squelettes = 'squelettes/' . $_COOKIE['skel'];
}
?>
Je ne l'ai pas testé…
A voir donc…
Ybbet
Le 16 mai 2014 à 22:36, Chris <f837@yahoo.fr> a écrit :
Bonjour,
j'aimerai relooker un site en ligne (jouer dans les squelettes)... sans perturber l'affichage des pages pour les visiteurs.
Avez vous une ruse simple pour pouvoir voir un dossier de squelette en tant que visiteur lambda et un autre en tant qu'admin?
Merci!
Chris
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net
Donc, on crée des répertoires comme ceci :
- squelettes/0minirezo
- squelettes/6forum
- Et pour ceux qui ne sont pas connectés : squelettes/defaut
Et dans votre cas, on ne prend pas en compte les rédacteurs : "1comite". De ce fait, ils seront redirigés vers le squelettes defaut
On peut regarder le statut du visiteur grâce à $GLOBALS
On peut imaginer un code comme ça dans config/mes_options.php :
<?php
# Choix du squelette selon le statut
# 0minirezo (administrateur ou administrateur restreint),
# 1comite (rédacteur),
# 6forum (visiteur)
$liste_skels = array(
'0minirezo',
'6forum'
);
if (isset($GLOBALS['visiteur_session']['statut']) and $statut = $GLOBALS['visiteur_session']['statut']) {
if (in_array($statut,$liste_skels)) {
setcookie('skel', $_COOKIE['skel'] = $statut, NULL, '/');
}
else {
setcookie('skel', $_COOKIE['skel'] = 'defaut', time()-3600*24, '/');
}
} else {
setcookie('skel', $_COOKIE['skel'] = 'defaut', time()-3600*24, '/');
}
if (isset($_COOKIE['skel']) AND in_array($_COOKIE['skel'],$liste_skels) AND is_dir(_DIR_RACINE.'squelettes/' . $_COOKIE['skel'])){
$dossier_squelettes = 'squelettes/' . $_COOKIE['skel'];
}
?>
Je ne l'ai pas testé…
A voir donc…
Ybbet
Le 16 mai 2014 à 22:36, Chris <f837@yahoo.fr> a écrit :
Bonjour,
j'aimerai relooker un site en ligne (jouer dans les squelettes)... sans perturber l'affichage des pages pour les visiteurs.
Avez vous une ruse simple pour pouvoir voir un dossier de squelette en tant que visiteur lambda et un autre en tant qu'admin?
Merci!
Chris
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net
Tout dépend de la façon dont sont fait tes squelettes mais l’idée, c’est d’écrire dedans des trucs du genre
[(#SESSION{id_auteur}|non)
ce que tu veux afficher pour le visiteur lambda
]
[(#SESSION{id_auteur}|oui)
ce que tu veux afficher pour les visiteurs connectés (visiteur enregistré ou rédacteur ou admin)
]
[(#SESSION{statut}|=={0minirezo}|oui)
ce que tu veux afficher pour les seuls admin)
] statut : 0minirezo (administrateur ou administrateur restreint), 1comite (rédacteur), 6forum (visiteur)
voir plus de détail sur la balise #SESSIONici
La proposition de Jean-Christophe fonctionne, mais ne permet pas de préserver totalement les internautes de perturbation/bugs de navigation pendant que tu bidouilleras les squelettes, par exemple si la syntaxe de l’une de tes conditions devenait incorrecte, même temporairement.
Plutôt que d’attaquer le site en production et de prendre ce risque, habituellement on travaille en pré-production, en copiant le site (fichiers + BDD) sur un serveur local par exemple (via WAMP ou autre).
Ah oui, remarque plus qu’importante, en effet.
Il va de soi que le travail sur les squelettes doit d’abord se faire en local et qu’on copie les fichiers sur le site en production qu lorsque tout est ok