[Magento] Ajouter un agencement (template) de page

Dans: Magento

5 jan 2012

Les templates de bases sous Magento sont assez restreints :

  • Vide
  • 1 colonne (1column.phtml)
  • 2 colonnes – Sidebar à gauche (2columns-left.phtml)
  • 2 colonnes – Sidebar à droite (2columns-right.phtml)
  • 3 colonnes (3columns.phtml)

Ces templates se trouvent dans : /app/design/frontend/{votre_interface}/{votre_theme}/template/page

Problème :

Homepage - Gabarit - Magento

1) Soit vous modifiez votre fichier 3columns.phtml. Toutes les pages en 3 colonnes seront comme ça

2) Soit vous créez un nouveau template.

Cependant, vous pouvez affecter votre template dans votre fichier xml sans problème, mais à partir d’une page CMS, il faut l’ajouter dans la liste déroulante « Agencement » de l’onglet « Design Personnalisé »

  1. Créez votre module permettant de déclarer ce fichier
  2. Créez homepage.phtml (en se basant sur 3 columns) que vous mettez dans le dossier des templates

1 – Déclarer votre module

app/etc/modules/PH2M_AddGabarit.xml
<?xml version="1.0"?>
<config>
	<modules>
		<PH2M_AddGabarit>
			<active>true</active>
			<codePool>local</codePool>
			<depends>
				<Mage_Page />
			</depends>
		</PH2M_AddGabarit>
	</modules>
</config>

2 – Déclarer votre nouveau gabarit

app/code/local/PH2M/AddGabarit/etc/config.xml
<?xml version="1.0"?>
<config>
	<modules>
		<PH2M_AddGabarit>
			<version>0.1.0</version>
		</PH2M_AddGabarit>
	</modules>
	<global>
		<page>
			<layouts>
				<homepage translate="label">
					<label>Homepage</label>
					<template>page/homepage.phtml</template>
					<layout_handle>Homepage</layout_handle>
				</homepage>
			</layouts>
		</page>
	</global>
</config>

3 – Créer votre nouveau gabarit

Dupliquer votre template 3 columns (par exemple) et modifier le.

Dupliquer :

app/design/frontend/base/default/template/page/3columns.phtml

En :

app/design/frontend/[votre_interface]/[votre_theme]/template/page/homepage.phtml

Télécharger le module Magento
pour ajouter un template de page

8 Commentaires pour [Magento] Ajouter un agencement (template) de page

Avatar

Frédéric Martinez

janvier 5th, 2012 à 17 h 41 min

L’article a totalement été mis à jour, et suivre l’article ou télécharger le module et le copier à la racine de votre boutique suffira :)

Avatar

maneva

juillet 6th, 2012 à 12 h 18 min

merci bien pour l’astuce !

Avatar

restaurant a paris

juillet 29th, 2012 à 2 h 50 min

merci bien pour l’article

Avatar

[Magento] Ajouter un agencement (template) de page | Blog Cercle-ecommerce

novembre 14th, 2012 à 21 h 49 min

[...] [Magento] Ajouter un agencement (template) de page This entry was posted in Infos E-Commerce and tagged agencement, App, columns, columns-right, [...]

Avatar

fabrice

juin 11th, 2013 à 19 h 11 min

Peut-on par ce biais ajouter plusieurs templates de pages avec ce même module ?
Peut-on faire ça en ajoutant une section comme ci-dessous dans la fichier config.xml ?

<page>
            <layouts>
                <homepage translate="label">
                    <label>Homepage</label>
                    <template>page/homepage.phtml</template>
                    <layout_handle>Homepage</layout_handle>
                </homepage>
            </layouts>
        </page>

Avatar

Frédéric Martinez

juin 17th, 2013 à 14 h 59 min

Bonjour Fabrice,

Oui vous pouvez ajouter autant de layout que vous voulez.
Il suffit de dupliquer le nœud homepage ci-dessus :

<page>
	<layouts>
		<homepage translate="label">
			<label>Homepage</label>
			<template>page/homepage.phtml</template>
			<layout_handle>Homepage</layout_handle>
		</homepage>
		<cart translate="label">
			<label>Cart</label>
			<template>page/cart.phtml</template>
			<layout_handle>Cart</layout_handle>
		</cart>
	</layouts>
</page>

Avatar

Yann bricoleur magento près d'Agen

juillet 28th, 2013 à 22 h 39 min

J’ai pour habitude de créer un seul module pour caler toutes mes customisations.
J’ai toujours pensé que je grattais un peu en performance. Mais je n’ai jamais pris le temps de mesurer si ça vallait vraiement la peine de perdre l’avantage d’avoir des modules séparés et clairement identifiés pour chaque customisation.

Un avis la dessus ?

Avatar

Frédéric Martinez

juillet 29th, 2013 à 10 h 03 min

@Yann : Un seul module pour toutes les modifications « basiques » est beaucoup mieux que 20 modules qui se chargent.

Le tout est de savoir si un module est assez complexe pour être exporté ou si c’est juste un agencement de page à changer ;-)

Formulaire pour Commenter

Si vous en avez besoin, entourez votre code :

PHP : [php]echo $variable[/php]
XML : [xml]<default></default>[/xml]

Je m'appelle Frédéric Martinez.

Je suis Freelance Magento, fondateur de l'agence web e-commerce PH2M et anciennement étudiant en Master MIAGE à Toulouse.

Ce site présente mes réalisations professionnelles, personnelles et universitaires.

Magento Certified Developer Plus

rss_32 twitter_32 Magento

  • Vincent MARMIESSE: Bonjour, Attention depuis Magento 1.9.2.0, les blocs CMS sont en cache ! Cela ne pose pas de pro [...]
  • Java2dev: Bonjour, pour l'Etape 1 a quel niveau on met les codes? dans quel folder et c'est un fichier a edit [...]
  • manuel: Bonjour Frédéric, j'aimerais savoir comment enlever l'option de ( signature obligatoire ) de mon m [...]
  • Arsene: Bonjour a tous, j'aimerais savoir comment créer un module qui propose des options d'assurance su [...]
  • Frédéric Martinez: @Thomas : Il y aura toujours de la perte sur les personnes ne retournant pas sur la page de success. [...]