2012-06-14 6 views
1

여기에있을 때 설치된 네임 스페이스/검색 모듈이 있습니다. 나는 그것으로부터 < [namespace] _index_index> 내용을 가져 와서 여기에 가지고있다. 이것은 현재 작동중인 모듈에서 온 것입니다.템플릿이 사용자 정의 프론트 엔드 모듈에서 작동하지 않습니다.

<reference name="root"> 
    <action method="setTemplate"><template>page/2columns-right.phtml</template></action> 
</reference> 
<reference name="content"> 
    <block type="search/search" name="search" template="ifi_search/index.phtml" /> 
</reference> 

저는 helloworld 모듈의 템플릿으로 위 내용을 사용했습니다.

<reference name="root"> 
    <action method="setTemplate"><template>page/2columns-right.phtml</template></action> 
</reference> 
<reference name="content"> 
    <block type="helloworld/helloworld" name="helloworld" template="helloworld/helloworld.phtml" /> 
</reference> 

두 번째 예에서는 완전히 빈 페이지가 남았으므로 개발자 모드가 켜져 있습니다. 주제에 관한 나의 지식을 확장하기 위해 나는 디버깅을 위해 제시 할 다른 정보가 없다. 추가 한 경우 유용한 것이 있으면 의견을 말하십시오. 나는이 시점에서이 문제를 재현 할 수 있는지 확신 할 수 없다.

+0

페이지 상단의 경고에 따르면이 기사에는 다소 위험한 정보가 포함되어 있으며 정보가 오래 되었더라도 정보가 오래되었습니다. 즉 아래의 @benmarks에 따라 루트 블록을 교체하는 경우 Magento를 사용하면 output = "toHtml"속성이 필요합니다. –

+0

이전 버전의 Magento를 실행 중이므로 기사에 문제가 있다는 것을 알지 못합니다. 광산을 복사하는 대신 두 번째 예제에서 코드의 일부를 복사하여 편집 한 후 우발적으로 출력 = "toHtml"을 제거하고이를 인식하지 못했습니다. IndexController에서 여러 가지 다른 메서드뿐만 아니라 현재 내가 가지고있는 것에 대한 여러 가지 변형을 시도했습니다. 내가 찾은 것은 page.phtml Sturm

답변

3

당신은 당신의 블록 선언에 output 속성을 추가해야합니다 : 이것은 출력 블록으로 블록을 표시하고 toHtml()에 블록 렌더링 방법을 설정

<block type="page/html" name="root" template="simple_page.phtml" output="toHtml"/> 

. 출력 블록은 Mage_Core_Controller_Varien_Action->renderLayout() 호출에서 엔트리 포인트를 렌더링합니다.

+0

출력 = "toHtml"에 대한 혼란을 드려 죄송합니다. 기사에서 올바른 코드를 붙여 넣지 않았습니다. 결과를 반영하기 위해 질문을 업데이트 하겠지만 여전히 똑같은 일을합니다. – Sturm

관련 문제