На данный момент у меня нет настроенной среды разработки предприятия, поэтому она не проверена, но она должна работать, как описано.
Если вы посмотрите на конфигурацию подарочной карты в
app/code/core/Enterprise/GiftCard/etc/config.xml
Вы можете просмотреть и найти псевдоним класса для обозревателя подарочных карт.
<class>enterprise_giftcard/observer</class>
Итак, с псевдонимом класса enterprise_giftcard/observer
у вас есть имя группы моделей enterprise_giftcard
и имя класса моделей observer
.
В файле конфигурации вашего модуля сначала вы создадите область для конфигурации модели.
<global>
<models>
</models>
</global>
Затем вы добавите название группы класса, который хотите переписать, enterprise_giftcard
<global>
<models>
<enterprise_giftcard>
</enterprise_giftcard>
</models>
</global>
Затем вы добавите узел, в котором говорится, что вы хотите переписать один класс в этой группе.
<global>
<models>
<enterprise_giftcard>
<rewrite>
</rewrite>
</enterprise_giftcard>
</models>
</global>
Затем вы добавите узел, указывающий, КАКОЙ класс в группе вы хотите переписать, используя часть имени псевдонима класса (observer
)
<global>
<models>
<enterprise_giftcard>
<rewrite>
<observer></observer>
</rewrite>
</enterprise_giftcard>
</models>
</global>
И, наконец, внутри этого узла вы добавите текстовый узел с именем вашего нового класса.
<global>
<models>
<enterprise_giftcard>
<rewrite>
<observer>Custom_GiftCard_Model_Observer</observer>
</rewrite>
</enterprise_giftcard>
</models>
</global>
Вы можете протестировать переписывание, создав экземпляр наблюдателя напрямую и проверив имя его класса.
$model = Mage::getModel('enterprise_giftcard/observer');
var_dump(get_class($model));
person
Alan Storm
schedule
19.01.2012