Это предположение здесь, но на основании ваших комментариев кажется, что вы успешно переписали класс Mage_Catalog_Model_Product_Type_Price
. Однако , система перезаписи Magento - это не "настоящая" утка / мартышка, которую вы видите в Ruby / Python.Перезапись будет работать только в том случае, если базовый код создает экземпляр Mage_Catalog_Model_Product_Type_Price
через псевдоним класса catalog/product_type_price
.Он не работает с объектом, который является экземпляром класса, который наследует от Mage_Catalog_Model_Product_Type_Price
.
Итак, рассмотрим это
#File: app/code/core/Mage/Catalog/Model/Product/Type/Configurable/Price.php
<?php
class Mage_Catalog_Model_Product_Type_Configurable_Price extends Mage_Catalog_Model_Product_Type_Price
Я предполагаю, что страница, которую вы загружаете, создает Mage_Catalog_Model_Product_Type_Configurable_Price
.Вот почему ваша перезапись работает, когда вы создаете экземпляр catalog/product_type_price
изолированно, но когда система создает экземпляр catalog/product_type_configurable_price
, ваша перезапись не запускается (и не может быть инициирована).
Короче говоря, попробуйте переписать модель catalog/product_type_configurable_price
и посмотрите, повезет ли вам больше.
Если это не сработает, вам нужно отследить, где код ядра Magento создает эти объекты, и отладить, что происходит.Предоставление большего контекста для вашего кода может помочь людям помочь вам с этой проблемой.