Magento2: отображение статических блоков на домашней странице


11

Как отобразить статические блоки на домашней странице. Я хочу показать статический блок в home на странице. Я перебираю module_cms и добавляю этот код в cms_index-index, но он показывает только последний блок

   <referenceContainer name="content.bottom">
<block class="Magento\Cms\Block\Block" name="block_identifier">
    <arguments>
        <argument name="block_id" xsi:type="string">block1</argument>
    </arguments>
</block>

     <block class="Magento\Cms\Block\Block" name="block_identifier" after="-">
    <arguments>
        <argument name="block_id" xsi:type="string">block2</argument>
    </arguments>
</block>

Как показать все блоки


Вы можете установить с помощью страницы, а также файл макета. Используя страницу, вы можете установить в любом месте на домашней странице, и его легко управлять по сравнению с файлом макета.
— Ракеш Джесадия,

cms страница? Rakesh
— User0434

Да, используя страницу cms, блокировка звонка внутри страницы cms
— Ракеш Джесадия,

как позвонить на страницу cms на домашней странице ..
— Можете

как отобразить его на домашней странице
— User0434

Ответы:


9

Держите ниже XML в вашем файле cms_index_index.xml и проверьте перед,

Вы должны держать то же самое block_identifierдля обоих статических блоков.

You have to keep static block name as unique,

  <referenceContainer name="content.bottom">
        <block class="Magento\Cms\Block\Block" name="block_identifier">
            <arguments>
                <argument name="block_id" xsi:type="string">block1</argument>
            </arguments>
        </block>

        <block class="Magento\Cms\Block\Block" name="block_identifier-second" after="-">
            <arguments>
                <argument name="block_id" xsi:type="string">block2</argument>
            </arguments>
        </block>
   </referenceContainer>

Замените block1 и block2 своим статическим идентификатором блока в приведенном выше XML-коде.


ничего не отображается
— User0434

Вы изменили имя так же, как указано выше, и вы создали block1 и block2?
— Ракеш Джесадия

изменилось, но не показывалось
— User0434

хорошо, я получил его на работу
— User0434

если я добавлю еще один блок, то
— User0434

20

Вы можете сделать это 2 способа.

Со страницы cms добавить блок в дань уважения:

{{block class="Magento\\Cms\\Block\\Block" block_id="block_identifier"}}

Из XML-файла:

<referenceContainer name="content">
    <block class="Magento\Cms\Block\Block" name="block_identifier">
        <arguments>
            <argument name="block_id" xsi:type="string">block_identifier</argument>
        </arguments>
    </block>
</referenceContainer>

Надеюсь, это поможет вам


какой XML-файл ..Kul
— User0434

@ Над, cms_index_index.xmlвы можете найти его в разделе просмотра module-cms
— Kul

нужно перевесить этот модуль?
— User0434

Если у вас нет этого модуля в вашей теме, вы можете скопировать его, Vendor/magento/иначе нет необходимости переопределять
— Kul

его не работает
— User0434

3

Создать блок

  1. Перейдите в панель администратора магазина Magento и перейдите на вкладку « Содержимое » в левом углу страницы. Далее, нажмите кнопку « Блоки» .

  2. Затем нажмите Добавить новый блок .

  3. Затем добавьте детали блока -> введите заголовок блока (заголовок блока) и идентификатор блока (идентификатор блока).

  4. Установите Block Identifier = Demo_Test и добавьте текст в раздел контента .

  5. Теперь просто нажмите Сохранить .

Добавить блок на домашнюю страницу

  1. Перейдите на панель администратора магазина Magento, перейдите на вкладку « Содержимое » в левом углу страницы и затем нажмите «Страница».

  2. Нажмите Редактировать на главной странице .

  3. Перейдите в раздел контента и добавьте шорткод блока : {{block class="Magento\Cms\Block\Block" block_id="Demo_Test"}}

  4. Нажмите Сохранить


Нужно добавить URL как дома?
— User0434

Какой URL вы говорите?
— Сайед Муниб Уль Хасан

1

Лучший способ - перейти в файл макета и скопировать описание блока.

<block class="Itheavens\Fanpage\Block\Index\Index" name="index.index" template="Itheavens_Fanpage::index/index.phtml"/>

и заменить его на второй кронштейн, вот так

{{block class="Itheavens\Fanpage\Block\Index\Index" name="index.index" template="Itheavens_Fanpage::index/index.phtml"}}

0

block_identifier

Добавьте файл default.xml в папку Magento_theme, которая находится под текущей примененной темой.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.