다음과 같이 노드 /custommodule/customer/info
에서 2columns-left.phtml
템플릿을 로드하는 경로에 사용자 정의 컨트롤러에 액세스했습니다 root
.
<custommodule_customer_info>
<reference name="root">
<action method="setTemplate"><template>page/2columns-left.phtml</template></action>
</reference>
</custommodule_customer_info>
내가하고 싶은 것은 로그인하지 않은 고객을 위해 루트 템플릿을 업데이트하는 것입니다.
<customer_logged_out>
<custommodule_customer_info>
<reference name="root">
<action method="setTemplate"><template>page/1column.phtml</template></action>
</reference>
</custommodule_customer_info>
</customer_logged_out>
이러한 방식으로 여러 레이아웃 핸들을 타겟팅 할 수는 없지만 의도는 명확해야합니다. 고객이 로그인하지 않은 상태에서이 레이아웃 핸들의 루트 템플릿을 업데이트합니다.
다음과 같이 컨트롤러 핸들을 대상으로 할 수 있다고 생각했습니다.
<customer_logged_out>
<reference name="custommodule_customer_info">
<reference name="root">
<action method="setTemplate"><template>page/1column.phtml</template></action>
</reference>
</reference>
</customer_logged_out>
이것은 실제로 템플릿으로 루트 템플릿을 업데이트 1column.phtml
하지만 내 reference
노드 에서 대상으로 지정된 페이지 대신 모든 페이지로 표시됩니다 .
이 레이아웃 업데이트에 대한 몇 가지 순열을 시도했지만 아무것도 작동하지 않는 것 같습니다. 레이아웃 핸들을 사용하면서 동시에이 하나의 레이아웃 핸들을 대상으로 지정할 수 customer_logged_out
있습니까?
-편집-분명히, 이것은 실제로 타사 모듈입니다.
customer_logged_in/out
손잡이 가 너무 강력 할 수는 있지만,이 한계 때문에 짐을지게됩니다.