18
Magento에서 "done_some_thing"과 같은 맞춤 이벤트를 어떻게 추가 할 수 있습니까? 나는 특정 링크를 통해 오는 고객을위한 특정 %의 할인 혜택을 제공하는 쇼핑 카트를 코딩하고, 쇼핑 카트 및 체크 아웃 페이지 모두에서 동일하게 보여주고 싶은하고Magento의 맞춤 이벤트
Magento에서 "done_some_thing"과 같은 맞춤 이벤트를 어떻게 추가 할 수 있습니까? 나는 특정 링크를 통해 오는 고객을위한 특정 %의 할인 혜택을 제공하는 쇼핑 카트를 코딩하고, 쇼핑 카트 및 체크 아웃 페이지 모두에서 동일하게 보여주고 싶은하고Magento의 맞춤 이벤트
사용, 이벤트를 파견하려면 Mage::dispatchEvent
기능 (%magento%/app/Mage.php around line 425
). 통화는 다음과 같다 :
$data = array('somedata' => 'foo', 'layout' => $this->getLayout());
Mage::dispatchEvent('my_event_name', $data);
, 이벤트를 관찰 확장의 config.xml 파일에서 관찰자를 지정하려면.
<config>
<global>
<events>
<my_event_name>
<observers>
<myextension>
<type>singleton</type>
<class>myextension/observer</class>
<method>someMethodName</method>
</myextension>
</observers>
</my_event_name>
</events>
</global>
</config>
는 해당 클래스와 메소드 (Observer.php)를 작성하고 당신은 갈 준비되었습니다 :
class Myextension_Model_Observer {
public function someMethodName($event) {
$layout = $event->getLayout();
$someData = $event->getSomedata();
}
}
이것은 간단한 설명입니다. +1 –
위로 다음 : [Magento의 이벤트 관찰자로부터 발송자에게 다시 데이터를 반환] (http://stackoverflow.com/q/13277121/367456)) – hakre