Будет ли Magento включать любой * .xml файл, который я положил в app / etc /?


11

Я отключил log_%таблицы, когда понял, что было бы удобно поместить конфигурацию в собственный XML-файл. Поэтому я начал искать, как включены файлы xml в app / etc /. Когда я не смог найти прямых ссылок ни на что, кроме local.xml, и я знаю, что файл enterprise.xml включен, я попытался провести эксперимент: я добавил правильно отформатированный файл конфигурации с именем nolog.xml (ниже) и перезапустил Apache.

<?xml version="1.0"?>
<config>
  <frontend>
    <events>
      <controller_action_predispatch>
        <observers>
          <log>
            <type>disabled</type>
          </log>
        </observers>
      </controller_action_predispatch>
      <controller_action_postdispatch>
        <observers>
          <log>
            <type>disabled</type>
          </log>
        </observers>
      </controller_action_postdispatch>
      <customer_login>
        <observers>
          <log>
            <type>disabled</type>
          </log>
        </observers>
      </customer_login>
      <customer_logout>
        <observers>
          <log>
            <type>disabled</type>
          </log>
        </observers>
      </customer_logout>
      <sales_quote_save_after>
        <observers>
          <log>
            <type>disabled</type>
          </log>
        </observers>
      </sales_quote_save_after>
      <checkout_quote_destroy>
        <observers>
          <log>
            <type>disabled</type>
          </log>
        </observers>
      </checkout_quote_destroy>
    </events>
  </frontend>
</config>

Конечно же, мои журналы все еще не записываются. Я просто ищу проверку работоспособности: могу ли я поместить любой файл * .xml в приложение / etc и ожидать, что Magento включит его?


1
Кстати, вам не нужно перезапускать Apache, если вы только изменили настройки Magento. Однако вам может потребоваться очистить кеш конфигурации, если он включен.
Люк Миллс

Ответы:


12

Да, ты можешь. Это часть стандартной загрузки конфигурации Magento для поиска любого файла, указанного *.xmlв этой папке. В частности, следующий код делает это.

#File: app/code/core/Mage/Core/Model/Config.php
$etcDir = $this->getOptions()->getEtcDir();
$files = glob($etcDir.DS.'*.xml');

Кроме того, слишком длинная для самостоятельной ссылки StackExchange, которая охватывает больше, чем вы когда-либо хотели знать о загрузке конфигурации .

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