Краткое примечание: у меня есть полный доступ администратора к M2, но нет доступа к серверу. (Мадженто EE 2.1.4).
Итак, у меня есть несколько страниц CMS, которые используют макет «2 столбца с левой панелью». Боковая панель для этого макета представляет собой простое меню из статического блока.
Я пытаюсь удалить существующее меню и добавить на его место статический блок на уровне страницы.
Быстрый Google показал мне, что я могу использовать что-то вроде:
<referenceBlock name="advice_centre_leftmenu" remove="true"/>
<referenceContainer name="sidebar">
<block class="Magento\Cms\Block\Block" name="test">
<arguments>
<argument name="block_id" xsi:type="string">test</argument>
</arguments>
</block>
</referenceContainer>
Проблема в том, что я понятия не имею, что такое имена контейнеров или блоков. У меня также нет соответствующего доступа, чтобы получить файлы PHTML, чтобы выяснить это (стороннее агентство разработчиков).
В разделе администратора блок, содержащий меню, которое я пытаюсь удалить, имеет идентификатор «advice_leftmenu», однако, когда я пытаюсь:
<referenceBlock name="advice_leftmenu" remove="true"/>
Ничего не произошло.
Вот соответствующий HTML-код вокруг боковой панели:
<div class="columns">
<div class="sidebar sidebar-main">
<div class="widget block block-static-block">
<div class="left-cms-content">
...
</div>
</div>
</div>
</div>
Я также пробовал следующее безрезультатно:
<referenceBlock name="sidebar.sidebar-main" remove="true"/>
<referenceBlock name="sidebar-main" remove="true"/>
Есть ли где-нибудь в HTML/admin я могу посмотреть, чтобы найти имена контейнеров/блоков?
Буду ли я вынужден вырваться из агентства на какое-то время, чтобы найти имена для меня?
Обновление:
Я включил подсказки по теме благодаря предложению @Nolwennig.
Теперь мне удалось добавить блок, используя:
<referenceContainer name="sidebar.main">
<block class="Magento\Cms\Block\Block" name="buyers-menu">
<arguments>
<argument name="block_id" xsi:type="string">buyers-menu</argument>
</arguments>
</block>
</referenceContainer>
Однако я все еще не могу удалить блок, теперь я знаю, что идентификатор блока — left_cms_content. Я теперь также пробовал:
<referenceBlock name="left_cms_content" remove="true"/>
Но эффекта до сих пор нет.
<referenceContainer name="sidebar.main"> <block class="Magento\Cms\Block\Block" name="buyers-menu"> <arguments> <argument name="block_id" xsi:type="string">buyers-menu</argument> </arguments> </block> </referenceContainer>
Однако я все еще не могу удалить блок, теперь я знаю, что идентификатор блока — left_cms_content. Я вот тоже попробовал:<referenceBlock name="left_cms_menu" remove="true"/>
Но эффекта все равно нет. 08.06.2017