Переопределить / удалить узел / значение XML Config?


11

Я хочу удалить некоторые значения XML, не затрагивая основные XML-файлы, возможно ли это?

Сценарий следующий.

У /app/code/core/Mage/Tax/etc/config.xmlнас есть некоторое значение конфигурации для итогов ( <sales><quote><totals>). Я хочу закомментировать taxодин, чтобы налоговая линия не отображалась в веб-интерфейсе.

  • комментирование узла в основном XML-файле работает нормально, но это не лучший подход.
  • Если я поместил новые значения empy в отдельный модуль, у меня будет другой эффект (это не похоже на удаление объявления)

В частности, я хочу сделать что-то вроде:

  • <!--<renderer>tax/checkout_tax</renderer>-->

2
Почему вы не можете изменить настройки, System > Configuration > Tax > Shopping Cart Display Settingsчтобы не показывать налог?
Питер О'Каллаган

это не совсем то же самое ... однако спасибо
Fra

Ответы:


8

Теоретически внутри вашего модуля вы можете:

  1. в config.xmlперезагрузке узла что-то вроде<renderer>0</renderer>
  2. зарегистрировать наблюдателя и Mage::getConfig()->setNode('path', NULL)

<renderer>0</renderer>дает мне другой результат: удаление узла из основного XML-файла возврата nullпри <renderer>0</renderer>возврате строки со значением 0
Fra

Попробуйте поставить nullвместо 0. Если это не сработает, попробуйте вариант 2.
user487772

Я уже пробовал оба (0 и ноль), проблема в том, что они конвертируются в строку ... Я думаю, что решение 2 - единственное работающее
Fra

@Франческо, не совсем. Решение 1 все еще может быть действительным в некоторых случаях, когда задание значения 0или что-то еще сделает эту работу.
user487772

1
Привет, Тим, я думаю, что это хорошая идея улучшить ответ, указав, что method 1это не эквивалентно закомментировать строку в основном файле
Fra
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.