Magento 2.2 - Удаление верхнего и нижнего колонтитула ТОЛЬКО с главной страницы?

Я использую Magento 2.2, и мне интересно, как удалить верхний и нижний колонтитулы ТОЛЬКО с домашней страницы? Я пользуюсь разными магазинами, поэтому домашняя страница просто служит порталом для каждого магазина.

Я явно только хочу удалить верхний и нижний колонтитулы с главной страницы. Они должны появиться на всех остальных страницах.

Спасибо.


person James    schedule 14.03.2018    source источник


Ответы (3)


Лучший способ сделать это — удалить верхний и нижний колонтитулы из файла XML-рендеринга. Если вы скроете его только с помощью CSS, то этот раздел будет отображаться и ему потребуются некоторые ресурсы. Вы можете попробовать что-то вроде этого:

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
  <body> 
      <referenceBlock name="header.container" remove="true" />  
      <referenceBlock name="footer.container" remove="true" />
  </body> 
</page> 
person René Höhle    schedule 14.03.2018
comment
Вопрос в том, куда мне вставить этот код? Если я вставлю: app/design/frontend/New_Theme/default/Magento_Theme/layout/default.xml Тогда это будет применяться ко всему сайту, верно? - person James; 15.03.2018
comment
Да в XML-файле вашей темы. - person René Höhle; 15.03.2018
comment
Верно, но если я поставлю его туда, он удалит его со всего сайта. Я ТОЛЬКО хочу удалить его для домашней страницы. Остальная часть сайта должна иметь верхний и нижний колонтитулы. - person James; 15.03.2018
comment
Когда у вас есть CMS-страница для вашей стартовой страницы, вы можете добавить операторы удаления в расширенные параметры. Должно быть поле «Макет», где вы можете редактировать обе строки для удаления контейнера. - person René Höhle; 15.03.2018

Вам необходимо перезаписать макет cms_index_index.xml. Затем он применит изменения только к домашней индексной странице.

person Vladimir Khrebtov    schedule 13.07.2018

Я уверен, что есть другие способы не отображать контент в коде бэкенда, но вы, безусловно, можете сделать это и в CSS.

.cms-home .header {
    display: none;
}

.cms-home .page-footer {
    display: none;
}

Если вы ищете решение для кода, я полагаю, что вы бы переопределили один из файлов макета xml, чтобы сделать это. Прошло некоторое время с тех пор, как я что-то делал с Magento, поэтому я не уверен, возможно ли это, но должно быть, если я правильно помню.

Похоже, это может быть хорошим примером для удаления с помощью параметра layout xml: Как удалить поле «Подписаться» из нижнего колонтитула Luma

person adprocas    schedule 14.03.2018