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
Solved! Go to Solution.
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.
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.