我試圖發現如何配置一個觀察器來檢查時,在品類/搜索結果下列出產品時,magento調用價格,但目前我找不到任何線索。產品價格表事件?
任何人有過這種需求之前,可以給我一些指針?
我正在使用Magento 1.6.0.0。你可以這樣做
我試圖發現如何配置一個觀察器來檢查時,在品類/搜索結果下列出產品時,magento調用價格,但目前我找不到任何線索。產品價格表事件?
任何人有過這種需求之前,可以給我一些指針?
我正在使用Magento 1.6.0.0。你可以這樣做
一種方式是通過觀察目錄產品collection_load_after事件:
<catalog_product_collection_load_after>
<observers>
<Your_Module_Observer>
<type>model</type>
<class>your_module/Observer/class>
<method>modifyPrices</method>
</Your_Module_Observer>
</observers>
</catalog_product_collection_load_after>
然後,您可以通過收集循環,讓每個產品的價格,並進行更改,如果你想:
$products = $observer->getCollection();
foreach($products as $product)
{
$product->setPrice($myCustomPrice);
}
不知道這是否正是你正在尋找,但希望它指向你在正確的方向。
一般平均是設置一個觀察者爲任何特定的事件
看到https://magento.stackexchange.com/questions/314/how-to-know-the-magento-event-that-we-want-to-hook
在模塊LOGEVENT,所述的config.xml
<?xml version="1.0" encoding="UTF-8"?>
<modules>
<Maticode_Logevent>
<version>0.1</version>
</Maticode_Logevent>
</modules>
<global>
<models>
<Logevent>
<class>Maticode_Logevent_Model</class>
</Logevent>
</models>
<events>
<controller_action_predispatch>
<observers>
<Logevent>
<type>singleton</type>
<class>Logevent/observer</class>
<method>controller_action_predispatch</method>
</Logevent>
</observers>
</controller_action_predispatch>
</events>
</global>
和型號/ observer.php
<?php
class Maticode_Logevent_Model_Observer {
public function controller_action_predispatch($observer) {
Mage::log ($observer->getEvent()->getControllerAction()->getFullActionName(),null, 'eventlog.log');
}
}
這樣,在
var/log/eventlog.log file
u能在任何測試行動
真棒可視化可能鉤,我想使用昨晚但我的電腦還沒等我死了,非常感謝你的幫助! :) – Matteo