Testé fonctionnel Magento 2.3.4 et 2.4.0.
- Documentation officielle Magento 2: Create cms-page/product/category-specific layouts
- Tutoriel Amasty: How to add the Custom Layout Update on Magento 2.3.4?
Pour une page CMS:
Dans le code source du projet:
Le fichier à utiliser comme modèle est le suivant: vendor/magento/module-cms/view/frontend/layout/cms_page_view.xml
.
Pour une page CMS, créer un fichier app/design/frontend/Vendor/theme/Magento_Cms/layout/cms_page_view_selectable_<clé d'URL>_<libellé de votre layout update tel qu'il apparaît dans le champ en BO>.xml
.
Exemple: pour une page CMS dont la clé d’URL est « test-karine » (en front: https://agriculture-vitalconcept-prod.sodicloud.fr/test-karine):
Si une page avec la même clé d’URL existe sur tous vos stores: app/design/frontend/Vital/vital/Magento_Cms/layout/cms_page_view_selectable_test-karine_TestKarine.xml
.
Si la page n’existe que sur un store en particulier (agriculture dans mon exemple): app/design/frontend/Vital/agriculture/Magento_Cms/layout/cms_page_view_selectable_test-karine_TestKarine.xml
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<?xml version="1.0"?> <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd"> <body> <referenceContainer name="sidebar.main"> <!--Remove default compare functionnality--> <referenceBlock name="catalog.compare.sidebar" remove="true"/> <!--Remove default wishlist functionnality--> <referenceBlock name="wishlist_sidebar" remove="true" /> <referenceBlock name="multiple-wishlist_sidebar" remove="true" /> <!--Add some block--> <block class="Magento\Cms\Block\Block" name="block.karine"> <arguments> <argument name="block_id" xsi:type="string">block-karine</argument> </arguments> </block> </referenceContainer> <referenceContainer name="sidebar.additional"> </referenceContainer> <referenceContainer name="content"> <referenceBlock name="cms_page"/> </referenceContainer> </body> </page> |