簡體   English   中英

Magento自定義模塊Observer無法正常工作

[英]Magento custom module Observer not working

我已經在app / code / local / mycustom / GeoLocation中創建了magento中的自定義模塊,因為我想創建一個觀察者,所以我已經按照了很多教程,最后我創建了下面的代碼,在每個頁面加載時調用它magento,但它仍然沒有調用我的observer.php自定義模塊。我是magento的新手所以請幫助我。

config.xml中

<config>
    <global>
        <events>
            <cms_page_render>
                <observers>
                    <mycustom_GeoLocation_Model_observer>
                        <type>singleton</type>
                        <class>mycustom_GeoLocation_Model_Observer</class>
                        <method>getGeoLocation</method>
                    </mycustom_GeoLocation_Model_observer>
                </observers>
            </cms_page_render>
        </events>
    </global>
</config>

mycustomGeolocation_Event.xml用於啟用模塊

<config>
    <modules>
        <mycustom_GeoLocation>
            <active>true</active>
            <codepool>local</codepool>
        </mycustom_GeoLocation>
    </modules> 
</config>

最后我的observer.php出現在我的自定義模塊的模型中

class mycustom_GeoLocation_Model_Observer {

   public function __construct()
   {
   }

    public function getGeoLocation(Varien_Event_Observer $observer) {   // current layout

         $event = $observer->getEvent();
         $cms_page = $event->getPage();  
         echo "called";
         exit;
         return $this;

    }
}

模塊中存在很多問題。

作為觀察者, die() may be not works Magento log print to check the observer work or not

模塊NameSpace文件夾名稱應以upper letter mycustom to Mycustom 您還需要更改類名reslusctive代碼。

更新:

config.xml代碼:

<?xml version="1.0"?>
<config>
  <modules>
    <Mycustom_GeoLocation>
      <version>0.1.0</version>
    </Mycustom_GeoLocation>
  </modules>
  <global>
    <models>
      <geolocation>
        <class>Mycustom_GeoLocation_Model</class>
      </geolocation>
    </models>
    <events>
      <cms_page_render> 
        <observers>
          <cms_page_render_handler> 
            <type>model</type> 
            <class>geolocation/observer</class> <!-- observers class alias -->
            <method>getGeoLocation</method>  
           </cms_page_render_handler>
        </observers>
      </cms_page_render>
    </events>
  </global>
</config> 

你可以在github上獲得完整的模塊

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM