В моей установке magento есть правило бесплатной доставки корзины покупок, а также правила купона. При вводе купона бесплатная доставка пропадает. Это нежелательно, но известное условие для Magento: Бесплатная доставка Magento и скидка по купону Примечание. Если кто-то знает, как исправить ЭТУ проблему без переопределения, это было бы предпочтительнее.
Я работал над этим около 3 часов. Я искал SO, Google и другие и не могу найти решение.
Вопрос:
Я пытаюсь написать модуль, который исправляет поведение на основе этого сообщения:
Проблема Magento с ценой корзины
Я пытаюсь переопределить класс Mage_SalesRule_Model_Resource_Rule_Collection
Используя бесплатный инструмент Алана Шторма, я обнаружил, что uri — salesrule/resource_rule_collection
,
И, проведя небольшое ручное расследование, мы выяснили, что класс находится здесь:
app/code/core/Mage/SalesRule/Model/Resource/Rule/Collection.php
Здесь ТАКЖЕ есть класс, который расширяет класс из приведенного выше файла:
app/code/core/Mage/SalesRule/Model/Mysql4/Rule/Collection.php
(какой из них я должен переопределить?)
На всю жизнь я не могу найти правильный синтаксис config.xml для переопределения нужного класса.
Мой конфиг сейчас выглядит так:
<config>
<modules>
<My_Couponrule>
<version>1.0.0</version>
</My_Couponrule>
</modules>
<global>
<models>
<salesrule>
<rewrite>
<resource_rule_collection>My_Couponrule_Model_Resource_Rule_Collection</resource_rule_collection>
</rewrite>
</salesrule>
</models>
</global>
However, I have carefully tried every combination I can deduce might be appropriate and none of them have worked:
<salesrule_resource_rule><rewrite><collection>
<salesrule_resource><rewrite><rule_collection>
<salesrule_resource><rewrite><collection>
<salesrule><rewrite><resource_collection>
<salesrule><rewrite><resource_rule_collection>
<salesrule><rewrite><rule_collection>
<salesrule_mysql4><rewrite><rule_collection>
<salesrule_mysql4_rule><rewrite><collection>
Примечания:
1. Я знаю, что файл конфигурации загружается, я проверил в System->Configuration->Advanced
2. Я также знаю, что файл конфигурации загружается, потому что у меня есть загруженные классы. вывод в браузер, и я пытался переопределить ДРУГИЕ классы и видел, что он успешно выводит правильный класс
3. Я знаю, что каждое сделанное мной изменение было загружено с помощью другой перезаписи, которую я добавил (и изменил каждый раз) просто для проверки изменение было правильно загружено.
3. Да, я очень внимательно следил за тем, чтобы теги были закрыты с помощью соответствующего закрывающего тега
4. Кэширование отключено, поэтому проблема не в том, что файл не загружается
Пожалуйста помоги. У меня осталось не так много волос...