Bonsoir

j'aimerai savoir si un tuto basé sur cakePHP est prévu concernant la gestion des thèmes.
le tuto et la formation offrent des informations concernant les plugins, mais quid de la gestion des multi-thèmes ?
ce que je sais :

  • si on veut proposer d'autres thèmes, il faut créer dans app/Views un dossier Themed possédant les dossiers des thèmes (par exemple, un dossier bootstrap3 pour le dernier BS3 de twitter)
  • dans ce dossier bootstrap3, on remet l'architecture nécessaire à construire l'archi des vues : bootstrap3/Layouts/..., bootstrap3/<vos dossiers de vue, comme Posts, ...> et bootstrap3/webroot/

Alors, des avis ?

Enjoy

PS : si j'ai loupé un topic ou un tuto sur ce sujet, désolé :)

PPS : désolé, ma souris a rippé, ce topic devrait être dans le forum juste en-dessous.
Merci à Grafi de le déplacer si il a le temps ;)

4 réponses


superg2
Auteur
Réponse acceptée

Yop et merci de tes lumières
Ma remarque n'était pas une vraie question, mais une proposition d'amélioration de la section formation sur cakephp.
Bref, les gens qui en arrivent à se poser ce genre de question doivent commencer à savoir lire le cookbook :)

Enjoy

Il n'y a rien de vraiment compliquer à faire ça. Tu créé un champ "theme" dans ta table "users" puis, dans ton AppController, tu crées une fonction beforeFilter comme ceci :

public function beforeFilter(){
    if(!empty($this->Session->read('Auth.User.theme')))
        $this->layout = $this->Session->read('Auth.User.theme');
    else
        $this->layout = 'default';
}

Tu peux aussi améliorer ça avec les cookies pour les personnes n'ayant pas de compte utilisateur, ça marche de la même façon.

Après, pour la mise en place des themes, tu respectes la répartition que tu as cité :
Pour le theme "BS3", tu créés un dossier "BS3" dans tes dossiers js, css et img et ainsi de suite pour chaque theme.

superg2
Auteur

hum, GG de déterrer ma discussion datant de ... 2 ans ?!