FONCTION
Permettre à chaque visiteur (logué ou non) de modifier la présentation du site en sélectionnant un thème parmi plusieurs squelettes.
Cette contrib est en quelque sorte une adaptation du système de ‘template chooser’ (sélecteur de modèle) existant pour Mambo (voir http://demo.mambohut.com).
L’interface comprend un champ de sélection et actualise une vignette pour chaque modèle que sélectionne le visiteur. Le modèle est ‘rafraîchis’ lorsque le visiteur valide en cliquant sur le bouton de sélection.
Exemple / démo sur un site spip : http://www.instits.fr.
INSTALLATION
Faites une sauvegarde de votre site.
Placer les sources téléchargées à la racine de votre site.
Vous pouvez tester le module depuis la page sommaire.php3.
Vous êtes automatiquement redirigés vers le squelette par défaut au chargement de cette page.
Le squelette par défaut peut être définit par l’administrateur depuis un espace d’administration (www.votresite.com/modules/sq_choix.php) [1].
PERSONNALISER VOS PAGES
- Vous pouvez modifier les squelettes présents au niveau du répertoire « templates » en déplaçant vos propres fichiers de mise en forme dans les sous répertoires adéquats.
- Vous pouvez également mettre à jour les informations affichées par le module de sélection (nom du squelette, chemin pour la vignette ...) en éditant le fichier CSV (fichier exporté depuis Excel) situé dans le répertoire ’modules’. Modifiez les informations adéquates en respectant le modèle.
QUELQUES REMARQUES SUPPLEMENTAIRES
- Le sélecteur de squelette est intégré à la page sommaire.html à l’aide du code suivant :
<INCLURE(modules/adapt-spip.php)>
Vous pouvez de la même manière intégrer le sélecteur de squelette sur les autres pages (auteur.html, rubrique.html …).
- La gestion de l’affichage fonctionne sur un principe d’auiguillage.
Ci-dessous l’exemple du code pour la page sommaire.php3.
<?php
// Si le cookie pour le squelette existe
if(isset ($_COOKIE["template"])) {
$chemin = $_COOKIE["template"];
}
// Sinon : chemin du squelette par defaut définit en admin
else {
include('modules/chemin.php3');
}
$fond = $chemin."sommaire";
$delais = 0;
include ("inc-public.php3");
?>
- Lorsqu’un visiteur arrive sur le site et clic sur le bouton afin de valider un choix de squelette, une variable (anb_Template) correspondant au modèle sélectionné est envoyée et traitée par un script puis sauvegardée dans un cookie. Cette information sert à modifier l’affichage du site.
Le problème du recalcule de la page ($delais = 0) est donc contourné à l’aide de cookies. J’ai volontairement laissé le délais à 0 mais vous pouvez modifier cette variable (Exemple : $delais = 24 * 3600 ; ).
- Contrib testée avec les versions spip 1.7 et spip 1.8.
REMERCIEMENTS
Une partie des sources de cette contrib s’inspire d’un module développé par Patrick VINCENT. Ce module donne la possibilité aux administrateurs d’un site spip de modifier le squelette des pages (http://reseau.erasme.org/article.php3?id_article=240).
Enfin :
Plusieurs projets visent à donner la possibilité de personnaliser l’affichage du site en fonction de différents squelettes. Je vous invite notamment à consulter la contrib suivante :
http://www.spip-contrib.net/article667.html
***
[1] Le chemin du squelette par défaut est sauvegardé dans le fichier « chemin.php3 ».
***
Papuli @lexandre : papuli@gmail.com
***
Note : Les sources de cette contrib sont également disponibles sur la page http://webconsultant.free.fr/news-projets.htm.
Discussions par date d’activité
Une discussion
J’ai un petit problème :
Lorsque j’ouvre ma page de sommaire, mon menu est sur modèle (ce qui est tout à fait logique), mais aucune image n’apparait au dessus...
j’ai réussçi à regler mon probleme, désolé de vous avoir dérangé
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |