2014-12-22 7 views
1

magento에서는 기본적으로 11 개의 탭이 백엔드의 고객 편집 페이지에 표시됩니다. 기본 탭 목록에서 탭을 제거하려면 어떻게해야합니까? 나는 지금까지 무엇을했는지 : Mage_Adminhtml_Block_Customer_Edit_Tabs 클래스를 재정의하는 클래스를Magento 백엔드의 고객 편집 페이지에서 탭을 제거하는 방법은 무엇입니까?

  1. 을 만든 다음 _beforeToHtml() 방법을 무효화한다.

  2. $this->removeTab('addresses');

답변

3

제거 고객 탭

를 사용하여 탭을 제거하려

가) 젠토들이 작은 오타했기 때문에 당신은 Mage_Adminhtml_Block_Customer_Edit_Tabs를 오버라이드 (override) 할 필요가 : 그들은 추가 _prepareLayout() 대신 _beforeToHtml() 메서드의 탭을 사용하십시오. 그래서 일단 당신은 당신의 config.xml 파일을 수정하고 추가 할 수 있습니다 Yourmodule_Customer_Block_Edit_Tabs _prepareLayout 그냥 복사하고 Mage_Adminhtml_Block_Customer_Edit_Tabs 내용을 (! 클래스 이름을 변경하는 것을 잊지 마세요) 붙여 _beforeToHtml을 (이름 변경) 방법에

<global> 
<blocks> 
    <adminhtml> 
     <rewrite> 
      <customer_edit_tabs>Yourmodule_Customer_Block_Edit_Tabs</customer_edit_tabs> 
     </rewrite> 
    </adminhtml> 
</blocks> 
</global> 

customer.xml) :()

b)는 레이아웃 XML (기본적으로 removeTab 조치를 추가 탭의 앵커() 검사 및 위해보고,

<adminhtml_customer_edit> 
<reference name="left"> 
    <block type="adminhtml/customer_edit_tabs" name="customer_edit_tabs"> 
     <action method="removeTab"> 
      <name>NAME_OF_TAB</name> 
     </action> 
    </block> 
</reference> 
</adminhtml_customer_edit> 

당신은 NAME_OF_TAB을 찾을 수 있습니다 " 이름 "attri bute.

+0

빠른 답장을 보내 주셔서 감사합니다. 솔루션은 '반복 프로파일'및 '결제 계약'을 제외한 모든 탭에서 작동합니다. 왜 그렇게 생각하니? – Praveesh

+0

안녕하세요 Emipro, 왜 "Mage 레지스트리 키"가입자가 "이미 존재합니다"라는 오류가 발생하는지 알고 계십니까? 대단히 감사합니다. –