Magento2: exibe blocos estáticos na página inicial

11

Como exibir blocos estáticos na página inicial. Eu quero mostrar o bloco estático na página inicial. Estou substituindo module_cms e adicione esse código no cms_index-index, mas está mostrando apenas o último bloco

   <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>

Como mostrar todos os blocos

Usuário0434
fonte
Você pode definir o uso da página e do arquivo de layout. Usando o Page, você pode definir em qualquer lugar da página inicial e é fácil gerenciar a comparação com o arquivo de layout.
Rakesh Jesadiya
página cms? Rakesh
User0434
Sim, usando a página cms, bloco de chamada dentro da página cms
Rakesh Jesadiya
como chamar a página cms na página inicial .. você pode dar um exemplo?
User0434
como exibi-lo na página inicial
User0434

Respostas:

9

Mantenha o XML abaixo no seu arquivo cms_index_index.xml e verifique na frente,

Você deve manter o mesmo block_identifierpara os dois blocos estáticos.

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>

Substitua block1 e block2 pelo seu ID de bloco estático acima do código xml.

Rakesh Jesadiya
fonte
nada mostrando
User0434
você mudou o mesmo nome acima e criou o bloco1 e o bloco2?
Rakesh Jesadiya
alterado, mas não aparecendo #
User0434
ok eu tenho que o seu trabalho
User0434
se eu adicionar outro bloco, então
User0434
19

Você pode fazer isso de duas maneiras.

Na página cms, adicione bloco à homenagem:

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

Do arquivo 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>

Espero que isso ajude você

Kul
fonte
qual arquivo xml ..Kul
User0434
@Nadh cms_index_index.xmlvocê pode encontrá-lo na seção, vista module-cms
Kul
precisa substituir esse módulo?
User0434
Se você não tem este módulo no seu tema, você pode copiar de Vendor/magento/outro modo não há necessidade de substituição
Kul
não está funcionando #
10346
2

Criar bloco

  1. Vá para o painel de administração da loja Magento e navegue até a guia Conteúdo no canto esquerdo da página. Em seguida, clique na opção Blocos .

  2. Em seguida, clique em Adicionar novo bloco .

  3. Em seguida, adicione os detalhes do bloco -> insira o título do bloco (título do bloco) e o identificador do bloco (ID do bloco).

  4. Defina o Identificador do bloco = Demo_Test e adicione algum texto na seção de conteúdo .

  5. Agora basta clicar em Salvar .

Adicionar bloco à página inicial

  1. Vá para o painel de administração da loja Magento, navegue até a guia Conteúdo no canto esquerdo da página e clique na opção Página.

  2. Clique no botão Editar na página inicial .

  3. Vá para a seção de conteúdo e adicione o código de acesso do bloco : {{block class="Magento\Cms\Block\Block" block_id="Demo_Test"}}

  4. Clique em Save

Syed Muneeb Ul Hasan
fonte
precisa adicionar URL como casa?
User0434
De qual URL você está falando?
Syed Muneeb Ul Hasan
1

A melhor maneira é, vá para o arquivo de layout e copie a descrição do bloco

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

e substitua-o pelo segundo suporte, fique assim

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

block_identifier

Adicione o arquivo default.xml na pasta Magento_theme, que é colocada no tema aplicado atual.

Jagriti Joshi
fonte