2013-02-18 71 views
1

嗨我正在爲Prestashop上的公司開發自定義模塊,我需要一些幫助。我最近在Magento上開發了同樣的插件,但在這裏我遇到了一些事件的麻煩(也叫做動態鉤子)。Prestashop後臺動態掛鉤(事件)不起作用

我試圖在後端使用動態鉤子來管理產品庫存。我沒能趕上我的模塊上的Prestashop後端事件,儘管我已經在我的安裝()方法註冊的掛鉤:

function install() { 
    if (parent::install() == false 
    || !$this->registerHook('home') 
    || !$this->registerHook('productFooter') 
    || !$this->registerHook('orderConfirmation') 
    || !$this->registerHook('shoppingCart') 
    || !$this->registerHook('actionProductDelete') 
    || !$this->registerHook('actionProductUpdate')) { 
    return false; 
} 
//default configuration values 
... 

,並放置爲每一個特定的方法。

public function hookActionProductDelete($params) { ... } 

我正在記錄雙方的所有進程。我與firePHPFileLoggerCore和地方的事件的調度與PrestaShop的FileLoggerCore的Prestashop的核心課程模塊。

在Product類中找到的事件(如actionProductDelete)已分派,但我無法捕獲它們。

我注意到的另一點是鉤子名稱在prestashop版本之間改變。在這最後的1.5版本中,鉤子比以前更多。在1.3到1.5的版本中可以使用相同的鉤子?

對不起,我的英語和很多預先感謝。

+0

我可以離線ping通,你問更多關於這個話題? – pulkitsinghal 2014-05-22 19:34:39

+0

當然,沒問題 – jmventar 2014-05-26 09:05:09

回答

2
  1. 檢查,如果你的模塊在actionProductDelete「管理員>模塊>的位置」勾勾搭

  2. 可以爲PS 1.3-1.5兼容使用舊鉤的名字,看ps_hook_alias數據庫表。對於掛鉤不前1.5存在,我認爲你需要重寫爲1.4 &代碼修改爲1.3

+0

刪除產品掛鉤沒有在modules> positions中註冊。 – jmventar 2013-02-19 09:29:15

+0

我很確定您的模塊已經安裝,然後在安裝函數中添加registerHook('actionProductDelete')。您可以重新初始化模塊以重播安裝。 – SJousse 2013-02-19 09:37:05

+0

非常感謝,那是關鍵。只是重新初始化,一切工作正常。我仍然是Prestashop的新手。 – jmventar 2013-02-19 09:59:13