Jump to content

Template et Controllers comment ça marche ?


Recommended Posts

Bonjour,

Je m'excuse si ma question parait un peu bête mais j'essaye de comprendre le fonctionnement des templates de Prestashop. Après avoir lu la doc de Smarty je me suis lancé dans la lecture des fichiers tpl contenus dans le thème de base de prestashop. Puis je me suis demandé où étaient assignés les variables que l'on récupérait dans ces fameux fichiers. Si je ne me trompe pas ce sont les "Controllers" qui s'en chargent. Ils sont là pour charger Smarty ainsi que les valeurs utiles.

Ma question est donc la suivante :
Si je souhaite avoir des valeurs supplémentaires dans mes fichiers tpl que dois je modifier pour que ça soit le plus propre et le plus compatible possible ?

Exemple : Je souhaite avoir les attributs des produits pour l'affichage en liste.
Dois-je modifier "CategoryController.php" ? Ou y a t-il plus propre à faire ?

Merci d'avance.
En espérant avoir été assez clair et détaillé dans ma question.

Link to comment
Share on other sites

A la racine j'ai l'impression qu'il y a surtout des appels aux "Controllers". Si je souhaite plus d'informations pour mes templates il me faut donc modifier ces scripts. Mais du coup je ne suis plus compatible avec Prestashop, non? :(

Link to comment
Share on other sites

A priori tu es sur la version 1.4 ?
Tu es obligé de modifier les Controleur pour rajouter des données à envoyer vers les templates.
Pour garder un maximum de compatibilité et passer sans souci les mises à jour, tu as un dossier /override/controllers/.
Tu peux dedans re-déclarer tes controlleurs principaux et ces derniers seront appelés.
Ainsi, tu ne touches pas au Core de Presta, tu dupliques un peu de contenu mais c'est pas vraiment trop grave.

Link to comment
Share on other sites

Oui je suis en 1.4 je me suis dit que j'allais commencer avec car la version finale ne devrait pas trop tarder et que j'aurais les dernières avancés pour Prestashop.

Plutôt intéressant ce répertoire "Override" en plus y'a aussi un répertoire "Classes" à l'intérieur. Faut que je me penche là-dessus. Par contre un template qui modifie les "Controllers" ne sera pas considéré comme un vrai template mais c'est déjà pas mal d'avoir cette possibilité.

Merci pour cette info plutôt utile.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...