Я использую Magento 2.02. Я создал свою собственную тему под названием «cff», которая основана на Luma.
Я пытаюсь снять catalog.compare.link
блок вtop.links
Макет для этого блока, кажется, определен в
/vendor/magento/module-catalog/view/frontend/layout/default.xml
И если я добавлю
<referenceBlock name="catalog.compare.link" remove="true" />
в этом файле, как и ожидалось, текст «Сравнить товары» исчезает из блока top.links.
Тем не менее, я знаю, что не должен менять файлы поставщиков. Поэтому я ищу правильную папку, в которой можно создать собственный default.xml
файл для размещения кода удаления:
Я посмотрел всюду в документации и онлайн, но не могу найти эту информацию. Я пробовал несколько мест, ни одно из них не работает. Я думал, что это должно работать, но это не так:
/app/design/frontend/cff/cff/Magento_Catalog/layout/default.xml
Пожалуйста, кто-нибудь может сказать мне, где должен находиться макет переопределения?
Это код внутри моего основного макета default.xml
<?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>
<referenceBlock name="catalog.compare.link" remove="true" />
</body>
</page>
Ответы:
Вы можете попробовать удалить контейнер ссылок сравнения:
compare-link-wrapper
Существует небольшая документация относительно удаления элементов с помощью макета XML, но вы можете найти ее здесь: http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/layouts/xml-instructions.html
Что касается вашего вопроса о том, где должен храниться этот файл: вы правы, полагая, что нам нужно расширить файл default.xml, добавив его в нашу тему
Magento_Catalog/layout/default.xml
илиMagento_Theme/layout/default.xml
Я просто попытался использовать тот же код, который вы предоставили, и у меня не было проблем с удалением блока сравнения. Я бы дважды проверил, что вы очистили свои кеши и вам не нужно ничего публиковать в каталоге вашего паба.
ОБНОВЛЕНИЕ 4/7/16:
Вы можете обновить каталог паба, удалив
pub/static
каталог вручную и запустив команду:источник
В папке вашей темы сначала перейдите в папку Magento_Theme / layout .
затем создайте папку layout / override / base и добавьте файл default.xml от поставщика и добавьте
<referenceBlock name="catalog.compare.link" remove="true" />
.источник
Я попытался удалить referenceContainer sidebar.additional со страницы со списком товаров. Я сделал следующие процедуры.
<referenceContainer name="sidebar.additional">
из \ vendor \ magento \ module-catalog \ view \ frontend \ layout \ default.xml<body>
. Код должен выглядеть<referenceContainer name="sidebar.additional" remove="true"></referenceContainer>
в app \ design \ frontend \ theme \ theme-name \ Magento_Theme \ layout \ default.xml.источник