Ajouter un en-tête et un pied de page dans la page de paiement Magento2


16

Par défaut, Magento 2 ne fournit pas HEADER et FOOTER dans la page CHECK OUT .

J'ai donc vérifié le fichier checkout_index_index.xml sur le chemin

app/design/frontend/package_name/theme_name/Magento_Checkout/layout/override/base

Il existe un ensemble d'attributs de suppression pour l'en-tête et le pied de page

donc je désactive l'attribut remove de remove = true à remove = false .

Mais l'en-tête et le pied de page ne s'affichent toujours pas sur la page de paiement. Quelqu'un peut-il me dire comment obtenir l'en-tête et le pied de page sur la page de paiement?


"Par défaut, Magento 2 ne fournit pas HEADER et FOOTER dans la page CHECK OUT." <= ce n'est pas vrai. Par défaut, Magento 2 fournit à la fois le pied de page et l'en-tête lors du paiement, votre thème PERSONNALISÉ les a supprimés.
Raphael au Digital Pianism du

3
@RaphaelatDigitalPianism Mais j'ai utilisé le thème magento / vide comme thème parent et créé mon theme.then pourquoi la page de paiement n'affiche pas l'en-tête et le pied de page? Je n'ai rien changé dans le module Magento_Checkout. J'ai utilisé le module Magento_Checkout par défaut fourni par magento. Et ce problème n'est pas seulement pour moi. J'ai vu tellement de développeurs qui ont le même problème.
Dhaval

@KetanKp Baroda, votre problème est-il résolu?
Rakesh Jesadiya

pas encore résolu ...
Ketan Borada

1
@RaphaelatDigitalPianism, en fait OP a raison. Par défaut, Magento n'inclut pas l'en-tête et le pied de page, car la disposition de paiement utilise la poignée de disposition vide au lieu de 1 colonne.
Erfan

Réponses:


17

J'ai une solution.

Accédez d'abord à Magento_Checkout dans votre dossier de thème app / design / frontend / package_name / theme_name / Magento_Checkout

Créez maintenant la structure de dossier ci-dessous dans le dossier de disposition sur le chemin ci-dessus. remplacer / thème / Magento / vide / checkout_index_index.xml

dans ce fichier checkout_index_index.xml, ajoutez le code ci-dessous.

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <move element="logo" destination="header-wrapper" before="-" />
        <referenceBlock name="minicart" remove="false" />
        <referenceContainer name="header.panel" remove="false" />
        <referenceBlock name="top.search" remove="false" />
        <referenceBlock name="catalog.compare.link" remove="false" />
        <referenceBlock name="catalog.topnav" remove="false"/>
        <referenceContainer name="footer-container"  remove="false"/>
    </body>
</page>

J'espère que quelqu'un trouvera cela utile.


Exception # 0 (LogicException): le remplacement du fichier de vue «D: /xampp/htdocs/nickstore/app/design/frontend/Mytheme/themename/Magento_Checkout/layout/override/theme/Magento/blank/checkout_index_index.xml» ne correspond pas à l'un des fichiers. Vous avez cette erreur
Asish Hira

@AsishHira Je pense que vous avez fait une erreur en remplaçant les fichiers.
Dhaval

Non, je ne .. Je l'ai vérifié avec votre réponse 12 fois
Asish Hira

As-tu trouvé la solution? J'ai le même problème. et je sais que c'est parce que le thème vierge n'a pas de fichier layout / ch‌ eckout_index_index.x‌ ml.
Abdul Shakoor Kakar

2
J'ai dû ajouter un </page>à la fin de ce bloc de code pour que cela fonctionne. Aussi pour répondre aux questions des autres utilisateurs, j'ai placé ce fichier surapp/design/frontend/VENDOR/THEME/Magento_Checkout/layout/checkout_index_index.xml
domdambrogia

14

Dans Magento 2.1 (.1), le logo est déplacé /vendor/magento/module-checkout/view/frontend/layout/checkout_index_index.xmlde son emplacement habituel vers checkout.header.wrapperpuis il semble se perdre quelque part.

Voici le culpit:

<move element="logo" destination="checkout.header.wrapper"/>

Pour récupérer le logo, ajoutez / modifiez le fichier: [root] / app / design / frontend / [vendor] / [theme] /Magento_Checkout/layout/checkout_index_index.xml

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  layout="1column"
  xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <move element="logo" destination="header-wrapper"/>
    </body>
</page>

3
2017 ici. Toujours super!
mniess

4

Pour moi, cela a fonctionné:

app / design / frontend / Vendor / themename / Magento_Checkout / layout / checkout_index_index.xml

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="checkout" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
      <move element="logo" destination="header-wrapper"/>
    </body>
</page>

app / design / frontend / Vendor / themename / Magento_Checkout / page_layout / checkout.xml

<?xml version="1.0"?>
<layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_layout.xsd">
    <update handle="1column"/>
</layout>

Nous avons installé le module OSC donc ce code fonctionne pour nous!
Jack

1

Pour récupérer le logo, ajoutez / modifiez le fichier: [root]/app/design/frontend/[vendor]/[theme]/Magento_Checkout/layout/checkout_index_index.xml Et avant la fin de la balise body ajoutez ce code.

<?xml version="1.0"?>
    <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      layout="1column"
      xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
        <body>
            <move element="logo" destination="header-wrapper"/>
            <move element="header-wrapper" destination="checkout.header.wrapper" before="logo"/> 
            <move element="footer_div" destination="checkout.header.wrapper"/>

        </body>
    </page>

comme ceci <move element = "header-wrapper" destination = "checkout.header.wrapper" before = "logo" /> <move element = "footer_div" destination = "checkout.header, wrapper" />
Bhagyavant Panhalakr

1

Aucune des réponses ci-dessus n'a fonctionné pour moi et la réponse acceptée entraîne l'erreur suivante:

Exception # 0 (LogicException): le remplacement du fichier de vue '/app/design/frontend///Magento_Checkout/layout/override/theme/Magento/blank/checkout_index_index.xml' ne correspond à aucun des fichiers.

Raison de l'erreur: aucun checkout_index_index.xmlfichier à remplacer à l'emplacement spécifié (sous le thème vide).

Solution: Après avoir consulté devDocs https://goo.gl/gvE23c je devais remplacer le fichier de base pour le module de commande en copiant le checkout_index_index.xmlfichier de vendor/module-checkout/layoutrépertoire et copié vers app/design/frontend/<Vendor>/<themename>/Magento_Checkout/layout/override/base et changé layout="checkout"àlayout="1column"

Le logo ne s'affichait pas à cause de la <move element="logo" destination="checkout.header.wrapper"/>ligne, alors je l'ai commenté et il a recommencé à apparaître.


0

Essayez d'ajouter watsons checkout_index_index.xml à [root] / app / design / frontend / [vendor] / [theme] /Magento_Checkout/layout/override/theme/blank/checkout_index_index.xml


0

Aller à...

[racine] / app / design / frontend / [fournisseur] / [thème] /Magento_Checkout/layout/checkout_index_index.xml

changer cette ligne

<move element="logo" destination="checkout.header.wrapper"/>

à

<move element="logo" destination="header-wrapper"/>

Cela a fonctionné pour moi :)


Excellent travail affichant à nouveau la même réponse ^^ (si ce fichier existe parce qu'un développeur dans votre équipe / entreprise / vous l'avez déjà mis là-bas ..)
OZZIE
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.