Agregar encabezado y pie de página en la página de pago Magento2

16

Por defecto, Magento 2 no proporciona HEADER y FOOTER en la página CHECK OUT .

Así que verifiqué el archivo checkout_index_index.xml en la ruta

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

Hay eliminar conjunto de atributos para encabezado y pie de página

así que desarme el atributo remove de remove = true para remove = false .

Pero aún así el encabezado y el pie de página no se muestran en la página de pago, ¿alguien puede decirme cómo puedo obtener el encabezado y el pie de página en la página de pago?

Dhaval
fuente
"Por defecto, Magento 2 no proporciona HEADER y FOOTER en la página CHECK OUT". <= esto no es cierto. Magento 2 predeterminado proporciona pie de página y encabezado al finalizar la compra, su tema PERSONALIZADO los eliminó.
Raphael en Digital Pianism
3
@RaphaelatDigitalPianism Pero he usado magento / tema en blanco como tema principal y creo mi tema. ¿Entonces por qué la página de pago no muestra el encabezado y el pie de página? No cambié nada en el módulo Magento_Checkout. He utilizado el módulo Magento_Checkout predeterminado que proporciona magento. Y este problema no es solo para mí. He visto tantos desarrolladores que tienen el mismo problema.
Dhaval
@KetanKp Baroda, ¿resolvió su problema?
Rakesh Jesadiya
aún no resuelto ...
Ketan Borada
1
@RaphaelatDigitalPianism, en realidad OP tiene razón. Por defecto, Magento no incluye encabezado y pie de página, porque el diseño de pago utiliza el controlador de diseño vacío en lugar de 1 columna.
Erfan

Respuestas:

17

Tengo una solución

Primero vaya a Magento_Checkout en su carpeta de tema app / design / frontend / package_name / theme_name / Magento_Checkout

Ahora cree la estructura de carpetas a continuación en la carpeta de diseño en la ruta anterior. override / theme / Magento / blank / checkout_index_index.xml

en este archivo checkout_index_index.xml agregue el siguiente código.

<?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>

Espero que alguien encuentre esto útil.

Dhaval
fuente
Excepción # 0 (LogicException): el archivo de vista 'D: /xampp/htdocs/nickstore/app/design/frontend/Mytheme/themename/Magento_Checkout/layout/override/theme/Magento/blank/checkout_index_index.xml' no coincide con cualquiera de los archivos Tengo este error
Asish Hira
@AsishHira Creo que cometiste un error al anular los archivos.
Dhaval
No, no lo hice .. Lo verifiqué con tu respuesta 12 veces
Asish Hira
¿Encontraste la solución? Tengo el mismo problema. y sé que es porque el tema en blanco no tiene diseño / ch‌ eckout_index_index.x‌ ml archivo.
Abdul Shakoor Kakar
2
Tuve que agregar un </page>al final de este bloque de código para que esto funcione. También para responder las preguntas de otros usuarios, coloqué este archivo enapp/design/frontend/VENDOR/THEME/Magento_Checkout/layout/checkout_index_index.xml
domdambrogia el
14

En Magento 2.1 (.1), el logotipo se mueve /vendor/magento/module-checkout/view/frontend/layout/checkout_index_index.xmldesde su lugar habitual checkout.header.wrappery luego parece perderse en algún lugar.

Este es el culpable:

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

Para recuperar el logotipo, agregue / edite el archivo: [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>
OZZIE
fuente
3
2017 aquí. Sigue siendo genial!
mniess
4

Para mí esto funcionó:

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>
fassl
fuente
¡Tenemos un módulo OSC instalado, por lo que este código funciona para nosotros!
Jack
1

Para recuperar el logotipo, agregue / edite el archivo: [root]/app/design/frontend/[vendor]/[theme]/Magento_Checkout/layout/checkout_index_index.xml y antes del final de la etiqueta del cuerpo agregue este código.

<?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>
Bhagyavant Panhalakr
fuente
así <move element = "header-wrapper" destination = "checkout.header.wrapper" before = "logo" /> <move element = "footer_div" destination = "checkout.header, wrapper" />
Bhagyavant Panhalakr
1

Ninguno de los anteriores funcionó para mí y aceptó los resultados de la respuesta en el siguiente error:

Excepción n. ° 0 (LogicException): la anulación del archivo de vista '/app/design/frontend///Magento_Checkout/layout/override/theme/Magento/blank/checkout_index_index.xml' no coincide con ninguno de los archivos.

Motivo del error: no hay ningún checkout_index_index.xmlarchivo para anular en la ubicación especificada (bajo un tema en blanco).

Solución: Después de consultar devDocs https://goo.gl/gvE23c , tuve que anular el archivo base para el módulo de pago copiando el checkout_index_index.xmlarchivo del vendor/module-checkout/layoutdirectorio y lo copié app/design/frontend/<Vendor>/<themename>/Magento_Checkout/layout/override/base y lo cambié layout="checkout"alayout="1column"

El logotipo no se mostraba causado por la <move element="logo" destination="checkout.header.wrapper"/>línea, así que lo comenté y comenzó a mostrarse nuevamente.

Devtype
fuente
0

Intente agregar watsons checkout_index_index.xml a [root] / app / design / frontend / [vendor] / [theme] /Magento_Checkout/layout/override/theme/blank/checkout_index_index.xml

andy.ashler
fuente
0

Ir...

[root] / app / design / frontend / [proveedor] / [tema] /Magento_Checkout/layout/checkout_index_index.xml

cambia esta línea

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

a

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

Eso funcionó para mí :)

Gnucho
fuente
Gran trabajo al publicar la misma respuesta nuevamente ^^ (si ese archivo existe es porque algún desarrollador en su equipo / compañía / ya lo puso allí ...)
OZZIE