cancel
Showing results for 
Search instead for 
Did you mean: 

Magento 2 Header und Footer im Checkout hinzufügen

SOLVED

Magento 2 Header und Footer im Checkout hinzufügen

Hallo,

 

standardmässig sind Header und Footer seitens Magento im Checkout deaktiviert (wozu?).

 

Um diese wieder zu aktivieren, fand ich diverse, jeweils als solved gekennzeichnete, englischsprachige Lösungsvorschläge.

 

Diese reichten vom Erstellen und Anpassen der checkout_index_index.xml im Ordner

 

app/design/frontend/[vendor]/[theme]/Magento_Checkout/layout/

 

oder im Ordner

 

app/design/frontend/[vendor]/[theme]/Magento_Checkout/layout/override/theme/blank

 

oder auch im Ordner

 

app/design/frontend/[vendor]/[theme]/Magento_Checkout/layout/override/theme/Magento/blank

 

wobei bei letzterem die Fehlermeldung

1 exception(s):
Exception #0 (LogicException): Overriding view file '/....../....../mag2/app/design/frontend/dfprojects/fsred01/Magento_Checkout/layout/override/theme/Magento/blank/checkout_index_index.xml' does not match to any of the files.

erscheint und dieser damit ausgeschlossen werden kann.

 

Erschwerend kommt in meinem Fall noch hinzu, dass mein eigenes Theme auf Infortis Ultimo aufbaut, dieses auf Infortis Base und dieses auf Magento Blank.

 

Bezogen auf Magento Blank sollte die checkout_index_index.xml folgenden Inhalt zur Wiederherstellung von Header und Footer haben:

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

Da Ultimo einige Blöcke und Container mit eigenen Namen angepasst hat und auch über eine eigene checkout_index_index.xml im eigenen Magento_Checkout/layout - Ordner mit folgendem Inhalt

<?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>
    	<referenceBlock name="base-header-container" remove="true" />
    	<referenceBlock name="base-footer-container" remove="true" />
        <referenceContainer name="page.wrapper">
            <block class="Infortis\Base\Block\Html\Header" name="micro-header-container" before="-" template="html/header_micro.phtml" />
        </referenceContainer>
        <move element="site-logo" destination="micro-header-container" />
    </body>
</page>

verfügt, ergänzte ich meine checkout_index_index.xml um die entsprechend geänderten Zeilen

    	<referenceBlock name="base-header-container" remove="false" />
    	<referenceBlock name="base-footer-container" remove="false" />

Trotz des Komplett-Programms zur Bereinigung der Caches etc.

bin/magento maintenance:enable
bin/magento cache:clean
bin/magento cache:flush
rm -rf var/cache/*
rm -rf var/page_cache/*
rm -rf var/generation/*
rm -rf var/view_preprocessed/*
bin/magento setup:di:compile
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy
bin/magento setup:static-content:deploy de_DE
bin/magento indexer:reindex
bin/magento cache:clean
bin/magento maintenance:disable

konnte ich bisher keinerlei Erfolge erzielen.

 

Meine primäre Frage daher:

In welchem Ordner konkret müsste meine checkout_index_index.xml bei Magento-Version 2.1.9 liegen?

 

MfG George

1 ACCEPTED SOLUTION

Accepted Solutions

Re: Magento 2 Header und Footer im Checkout hinzufügen

Nach etlichem Probieren fand ich nun den richtigen Ort.

 

Bedingt dadurch, dass mein eigenes Theme auf Infortis Ultimo aufbaut, dieses auf Infortis Base, dieses wiederum auf Magento Blank, gab es ja nun einige Möglichkeiten, zumal recherchierte Lösungsansätze zusätzlich irritierten.

 

In meinem Fall nun gehört die checkout_index_index.xml

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
	<body>
		<!-- Wiederherstellung der durch Magento entfernten Blöcke/Container -->
                <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"/>
		
	        <!-- Wiederherstellung der durch Infortis entfernten Blöcke -->
	        <referenceBlock name="base-header-container" remove="false" />
    	        <referenceBlock name="base-footer-container" remove="false" />
	</body>
</page>

 in das Verzeichnis app/design/frontend/[vendor]/[theme]/Magento_Checkout/layout/override/theme/Infortis/base.

View solution in original post

1 REPLY 1

Re: Magento 2 Header und Footer im Checkout hinzufügen

Nach etlichem Probieren fand ich nun den richtigen Ort.

 

Bedingt dadurch, dass mein eigenes Theme auf Infortis Ultimo aufbaut, dieses auf Infortis Base, dieses wiederum auf Magento Blank, gab es ja nun einige Möglichkeiten, zumal recherchierte Lösungsansätze zusätzlich irritierten.

 

In meinem Fall nun gehört die checkout_index_index.xml

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
	<body>
		<!-- Wiederherstellung der durch Magento entfernten Blöcke/Container -->
                <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"/>
		
	        <!-- Wiederherstellung der durch Infortis entfernten Blöcke -->
	        <referenceBlock name="base-header-container" remove="false" />
    	        <referenceBlock name="base-footer-container" remove="false" />
	</body>
</page>

 in das Verzeichnis app/design/frontend/[vendor]/[theme]/Magento_Checkout/layout/override/theme/Infortis/base.