마 젠토 2 : 홈페이지에 정적 블록 표시


12

홈페이지에 정적 블록을 표시하는 방법은 무엇입니까? 페이지의 홈에 정적 블록을 표시하고 싶습니다. 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>

모든 블록을 표시하는 방법?


레이아웃 파일뿐만 아니라 페이지를 사용하여 설정할 수 있습니다. Page를 사용하면 홈페이지 내 어디에서나 설정할 수 있으며 레이아웃 파일과 비교하기 쉽습니다.
Rakesh Jesadiya

cms 페이지? Rakesh
User0434

예 cms 페이지를 사용하고, cms 페이지 내부의 블록을 호출
Rakesh Jesadiya

홈페이지에서 cms 페이지를 호출하는 방법 .. 어떤 예를들 수 있습니까?
User0434

홈 페이지에 표시하는 방법
User0434

답변:


9

cms_index_index.xml 파일에서 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>

위의 XML 코드에서 block1 및 block2를 정적 블록 ID로 바꿉니다.


아무것도 표시되지 않음
User0434

위와 동일하게 이름을 변경하고 block1 및 block2를 작성 했습니까?
Rakesh Jesadiya

변경되었지만 표시되지 않음
User0434

좋아, 나는 그것을 작동있어
User0434

다른 블록을 추가하면
User0434

21

두 가지 방법으로 할 수 있습니다.

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

@Nadh cms_index_index.xml모듈 -cms의보기 섹션에서 찾을 수 있습니다
Kul

해당 모듈을 무시해야합니까?
User0434

테마에이 모듈이 Vendor/magento/없다면 무시할 필요가 없습니다.
Kul

작동하지 않음
User0434

3

블록 만들기

  1. Magento Store 의 관리자 패널 로 이동 하여 페이지 왼쪽에서 컨텐츠 탭으로 이동 하십시오. 그런 다음 블록 옵션을 클릭하십시오 .

  2. 그런 다음 새 블록 추가를 클릭 하십시오 .

  3. 그런 다음 블록세부 사항을 추가하십시오 .-> 블록 제목 ( 블록 제목 ) 및 블록 식별자 ( 블록 ID )를 입력하십시오.

  4. Block Identifier = Demo_Test를 설정 하고 내용 섹션에 텍스트를 추가 하십시오.

  5. 이제 저장을 클릭 하십시오 .

홈페이지에 블록 추가

  1. Magento 저장소 의 관리자 패널 로 이동 하여 페이지 왼쪽 모서리에서 컨텐츠 탭으로 이동 한 다음 페이지 옵션을 클릭하십시오.

  2. 홈페이지 에서 편집 을 클릭합니다 .

  3. 컨텐츠 섹션으로 이동하여 블록 단축 코드를 추가하십시오 . {{block class="Magento\Cms\Block\Block" block_id="Demo_Test"}}

  4. 저장을 클릭 하십시오


집으로 URL을 추가해야합니까?
User0434

어떤 URL에 대해 이야기하고 있습니까?
Syed Muneeb Ul Hasan

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

현재 적용된 테마 아래에있는 Magento_theme 폴더 아래의 default.xml 파일에 추가하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.