Je suis intéressé par le plugin Switcher de squelettes pour changer de thèmes sur un site.
Il semble qu'il inclue une balise pour switcher le squelette sur le site public.
Comment est géré le cache dans ce cas ?? La bascule efface-t-elle les vieilles pages, ou bien y a-t-il systématiquement un paramètre supplémentaire qui distingue la page (même avec identification du squelette par cookie) ?
1. Effectivement, il l'inclut systématiquement juste avant le BODY.
Comment l'insérer là où l'on veut ?
J'avais bricolé une rustine pour l'afficher où je voulais mais je ne sais pas ce que ça vaut. Je ne suis pas fortiche pour coder, mais si tu veux je peux t'envoyer mes fichiers modifiés. Ce serait le mieux, parce que je ne me rappelle pas TOUT ce que j'ai modifié. Il faudrait comparer. Mai pour l'affichage, j'avais fait ça dans switcher_fonctions.php
// On rajoute le code du selecteur de squelettes où l'on veut
$texte=eregi_replace("<plugin_switcher>","$code",$texte);
puis je mettais <plugin_switcher> dans mes pages.
2. Le répertoire de squelette alternatifs :
// Repertoire contenant les repertoires squelettes a tester
$repertoire_squelettes_alternatifs ='themes';
Par rapport à quel dossier est-il spécifié ?
- à celui de SPIP ?
- à celui du plugin ? Si je veux intégrer ce dossier dans mon plugin à moi, faut-il :
$repertoire_squelettes_alternatifs ='plugins/monplugin/themes';
1. Effectivement, il l'inclut systématiquement juste avant le BODY.
Comment l'insérer là où l'on veut ?
// On rajoute le code du selecteur de squelettes où l'on veut
$texte=eregi_replace("<plugin_switcher>","$code",$texte);
puis je mettais <plugin_switcher> dans mes pages.
Merci , j'y regarderai.
2. Le répertoire de squelette alternatifs :
Si je veux intégrer ce dossier dans mon plugin à moi, faut-il :
$repertoire_squelettes_alternatifs ='plugins/monplugin/themes';
Ca c'est les squelettes explicites.
Je ne veux pas les expliciter, mais qu'ils soient détectés automatiquement dans le répertoire de squelettes alternatifs.
Oui, cette idée sur le choix de squelettes alternatifs...
Dur dur quand il faut plonger dans le code php pour modifier quelque
chose...
Cette demande m'a donné idée : je pense qu'il suffirait soit de de générer
dans le paramétrage du plugin, une liste déroulante des sous-répertoires du
dossier squelettes a retenir, soit de les saisir pour disposer d'une
interface de paramétrage, qui écrirait la valeur de $squelettes_alternatifs,
mais c'est encore un peu dur pour que je sache le faire tout seul...
Yx (le Gd YakaPas !
"Stéphane G." <m.stef@team-santonum.com> a écrit dans le message de
news:471699B8.1080009@team-santonum.com...
Bonjour,
Luis Speciale a écrit :
1. Effectivement, il l'inclut systématiquement juste avant le BODY.
Comment l'insérer là où l'on veut ?
// On rajoute le code du selecteur de squelettes où l'on veut
$texte=eregi_replace("<plugin_switcher>","$code",$texte);
puis je mettais <plugin_switcher> dans mes pages.
Merci , j'y regarderai.
2. Le répertoire de squelette alternatifs :
Si je veux intégrer ce dossier dans mon plugin à moi, faut-il :
$repertoire_squelettes_alternatifs ='plugins/monplugin/themes';
Ca c'est les squelettes explicites.
Je ne veux pas les expliciter, mais qu'ils soient détectés
automatiquement dans le répertoire de squelettes alternatifs.
1. Effectivement, il l'inclut systématiquement juste avant le BODY.
Comment l'insérer là où l'on veut ?
J'avais bricolé une rustine pour l'afficher où je voulais mais je ne sais pas ce que ça vaut. Je ne suis pas fortiche pour coder, mais si tu veux je peux t'envoyer mes fichiers modifiés. Ce serait le mieux, parce que je ne me rappelle pas TOUT ce que j'ai modifié. Il faudrait comparer. Mai pour l'affichage, j'avais fait ça dans switcher_fonctions.php
// On rajoute le code du selecteur de squelettes où l'on veut
$texte=eregi_replace("<plugin_switcher>","$code",$texte);
puis je mettais <plugin_switcher> dans mes pages.
OK, merci
J'ai fait le même style, sauf qu'au lieu d'une balise qui pourrait ne pas être reconnue si l'on désactive le switcher, j'ai placé une ancre :
// On rajoute le code du selecteur de squelettes avant la balise </body>
$anchor="<a id='switcher_anchor'>";
$texte=eregi_replace($anchor,"$anchor$code",$texte);