Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Magento自定义模块观察者不工作_Php_Magento - Fatal编程技术网

Php Magento自定义模块观察者不工作

Php Magento自定义模块观察者不工作,php,magento,Php,Magento,我已经在magento的app/code/local/mycustom/GeoLocation中创建了我的自定义模块,因为我想创建一个观察者,所以我遵循了很多教程,最后我创建了下面的代码,在magento的每个页面加载中调用它,但它仍然没有调用自定义模块的my observer.php。我是magento的新手,请帮助我 config.xml <config> <global> <events> <cms_

我已经在magento的app/code/local/mycustom/GeoLocation中创建了我的自定义模块,因为我想创建一个观察者,所以我遵循了很多教程,最后我创建了下面的代码,在magento的每个页面加载中调用它,但它仍然没有调用自定义模块的my 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>

模块中有很多问题

作为观察者,
die()可能不工作
。使用Magento
日志打印检查观察者是否工作

模块名称空间文件夹名称应以
大写字母mycustom到mycustom
开头。您还需要更改类名和响应代码

更新: 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> 

0.1.0
Mycustom_地理位置模型
模型
地理定位/观察员
地理定位

您可以在

获得完整的模块。谢谢您的回复。请详细说明,因为我是新来的。请稍等,我只是检查一下,然后告诉您我不知道是谁否决了voteLet我们,我需要125声誉来否决voteLet我们。
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;

    }
}
<?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>