В Magento 1 я мог удалить блок, добавленный файлом макета, добавив его в свой блок макета.
<remove ="block_id_here" />
Как я могу сделать то же самое для Magento 2?
В качестве практического упражнения, скажем, у меня есть свой собственный модуль, из которого я хочу удалить блок панели мониторинга со страницы панели администратора.
Блок добавлен с app/code/Magento/Backend/view/adminhtml/layout/adminhtml_dashboard_index.xml
помощью этого:
<referenceContainer name="content">
<block class="Magento\Backend\Block\Dashboard" name="dashboard"/>
</referenceContainer>
Я предполагаю, что мне нужно создать файл view/adminhtml/layout/adminhtml_dashboard_index.xml
в моем модуле, но что мне нужно поместить в него?
<remove />
-tag. Ошибка в документации?В самой последней ветке разработки magento 2 попробуйте создать view / adminhtml / layout / adminhtml_dashboard_index.xml
Источник https://github.com/magento/magento2/search?l=xml&q=remove&utf8=%E2%9C%93
источник
Допустим, вы хотите удалить блок заголовка со страницы успеха. Сначала вам нужно будет найти XML, который отвечает за эту конкретную страницу, в нашем случае это будет
vendor/magento/module-checkout/view/frontend/layout/checkout_onepage_success.xml
И в этом файле у вас будет следующий контент:
Теперь вам нужно расширить этот xml в своей теме,
app/design/frontend/.../.../Magento_Checkout/layout/checkout_onepage_success.xml
а внутри него ссылаться на блок, который вам нужно удалить,page.main.title
и добавитьremove="true"
вот так:Если вы хотите удалить определенный блок со всех страниц CMS, вы можете добиться этого, расширив стандартный XML-файл
vendor/magento/module-theme/view/frontend/layout/default.xml
в папке вашей темыapp/design/frontend/.../.../Magento_Theme/layout/default.xml
следующим образом:источник