2016-04-25 36 views
0

我想在自定義模塊上的OXID eShop Framework上創建一些跟蹤事件,但我找不到任何事件處理程序或其他代碼將代碼放在某些自定義頁面上,而無需編輯核心文件。我想要的是,如果我在產品頁面,類別頁面,購物籃等上,請進行一些自定義API調用。 有什麼方法可以在自定義模塊中處理此問題?Oxid eShop事件處理程序

+1

不知道你想達到什麼。如果您要提供您想要更改的類功能,那將很酷。有一個教程如何創建氧化模塊,也許它會對你有所幫助:http://www.sitepoint.com/build-infinite-scroll-list-oxid-eshop-basics/ –

+0

Oxid不提供任何事件你可以堅持(至少在4.xx版本中)。但是,您可以通過編寫自定義模塊來擴展Oxid而不更改其任何文件。你可能想在網上查找一些教程來了解它是如何工作的。如果您在構建自己的模塊時查找示例和模式,我建議您查看Oxid或一些[這些](https://github.com/OXIDCookbook)模塊附帶的官方PayPal模塊。還請查看[元數據文件](http://wiki.oxidforge.org/Features/Extension_metadata_file)以查看實際可行的內容。 – Patchee

回答

1

OXID沒有你可能從magento或shopware那裏知道的事件或鉤子。你有兩個選擇:


1)對於運行服務器端的PHP代碼,你需要擴展OXID的功能,例如render()函數爲您要跟蹤的頁面。 對於產品頁面這將是 「方式」 - >應用程序/控制器/ details.php 類別頁面是 「alist.php」 和籃是basket.php


2)使客戶端API調用簡單的JS。您可以將所有js代碼添加到tempalte塊(例如,在頁眉或頁腳中),併爲不同的控制器類創建一些if-else邏輯。 像這裏:https://github.com/OXID-eSales/oxideshop_ce/blob/b-5.3-ce/source/application/views/azure/tpl/layout/base.tpl#L32

你也可以看看谷歌分析或piwik的任何跟蹤模塊,他們是非常類似於你想要做的。 如果你願意,我可以給你更多的例子。