Jump to content

Recommended Posts

Bonjour.  Je vais essayé d'être clair et concis. J'ai regardé la doc PRESTASHOP 1.7 mais ce n'est pas expliqué et je n'ai pas trouvé grand chose en faisant des recherches "create custom layout.tpl". Donc, je pose la question ici si quelqu'un a quelques minutes pour me répondre ? Merci d'avance. 
 

Je cherche à faire un modèle de page en plus des modèles proposés par Prestashop 1.7 :
à savoir : Fullwidth - 3 colonnes - 2 colonnes gauche - 2 colonnes droite

Je voudrais sortir le  {hook h="displayContentWrapperTop"} du contenue pour le passé au dessus de la side-bar-gauche et du contenu.
Ce hook correspond au titre et à la description.
Le but étant ensuite de définir pour CATEGORY ce nouveau modèle de page. 

En fait, j'aimerais juste comprendre LE PRINCIPE.
Je pensais bêtement qu'on pouvait créer dans le dossier /LAYOUTS un nouveau .tpl pour l'appeler ensuite mais apparemment çà ne marche pas.
Si je crée par exemple "layout-left-columns-version-b.tpl", il n'apparaît pas dans les modèles de pages du back-office. 



 

Edited by bertrand (see edit history)

Share this post


Link to post
Share on other sites

Bonjour,

Il faut également renseigner ton nouveau layout dans le fichier de configuration du thème.

  • Like 1

Share this post


Link to post
Share on other sites

Merci, bcp. Ca marche bien  ! 
Si je peux résumer et éviter à d'autres de chercher, voici la marche à suivre pour créer un "modèle de page" dans Prestahop :

- Créez simplement votre fichier monLayout.tpl dans --> themes/votreTheme/templates/layouts
- Allez dans --> themes/votreTheme/assets/config/theme.yml 
- Ajouter à la ligne " available_layouts: " votre nouveau fichier : monlayout ( en prenant exemple sur les autres layouts)
- Allez maintenant dans "Apparences et thémes". Choisissez un autre thème que celui actif pour le réactiver ensuite ce qui permettra de prendre en compte le nouveau "layout", sinon il n'apparaitra pas....
- Videz le cache éventuellement ? Je n'ai pas eu à le faire... mais bon avec Prestashop on sait jamais. 
 

 

 

Share this post


Link to post
Share on other sites

Bonjour

Suite à la lecture de vos indications j'ai pu créer un layout simplement en suivant les instructions de @Bertrand !

Par contre une fois que ceci est fait, j'ai l'impression qu'on ne peut pas attribuer ce layout à une page CMS.... et une seule page CMS. Apparemment on est obligé d'appliquer (ou non) ce layout à toutes les pages CMS.

 

spacer.png

 

Ma question est donc : est il possible d'utiliser un layout personnalisé pour une seule page cms... ou plusieurs pages que l'on choisie ?

 

Merci beaucoup pour votre aide.

Share this post


Link to post
Share on other sites

Bonjour,

Pour modifier le layout en fonction d'une page cms vous devez créer un module et utiliser le hook overrideLayoutTemplate.

Pour en savoir plus, vous pouvez étudier la fonction getLayout() de classe FrontController

Share this post


Link to post
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...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More