Ответы:
Для этого есть два относительно новых метода:
Используйте modman, чтобы вы могли сами контролировать, что развертывать для каждой среды. Это означает, что вы работаете modman deploy [name-of-dev-extension]
только в своей среде разработки.
Используйте magento-composer с различными composer.json
сценариями для разных сред. И еще более простой способ - указать эти расширения как dev-модули, а затем установить проект с помощью --require-dev
коммутатора на компьютере разработчика.
Обычно их удобно отключить с помощью флага конфигурации, поэтому они технически активны, но ничего не делают. Если вы установите этот флаг на false в app/etc/local.xml
вашей действующей системе, все будет в порядке.
local.xml
файл в своем репо. Что может быть случаем.
local.xml
обычно не в репо
Посмотрите MageTrashApp, который был недавно создан на Magento Hackathon в Берлине. Позволяет деактивировать модули через панель администратора.
Простой способ сделать это - отключить модуль в / etc / modules, нажать его, игнорировать файл локально и снова включить его.
Я думаю, что лучший способ справиться с этим - либо сохранить все эти модули в локальном codePool и отключить все локальные модули в режиме реального времени с помощью этой строки в вашем local.xml:
<disable_local_modules>true</disable_local_modules>
Или вы можете сделать «Disable Module Output» в бэкэнде в вашей реальной среде. (Система -> Конфигурация -> Дополнительно). Однако это не полностью отключить модуль. Но, может быть, этого достаточно, чтобы ты хотел скрыть это.
Единственное, о чем я могу думать, - это написать какой-нибудь код, который сможет это осуществить. Просто проверьте, находится ли он в режиме разработчика ( Mage::getIsDeveloperMode()
), а затем отключите модули. Я нашел более подробную информацию о достижении этого здесь: /programming/6520634/magento-how-to-disable-module-programmatics
local
модулей заставит вас переместить все остальные модули из local
codePool, community
а также сделать это для всех будущих расширений. Отключение вывода модулей, как вы сказали, позволяет расширению замедлять работу вашего магазина. А третье решение потребует изменений, которые будут перезаписаны с обновлением расширений.
Я обычно просто помещаю их в свою среду тестирования, но не проверяю их в системе контроля версий, например, используя .gitignore
файл, чтобы исключить их из рассмотрения для принятия.
На конференции Imagine 2011 Эрика Хансена есть слайд. Он указал код на слайде, как показано ниже (для режима разработчика)
# File : index.php
if(preg_match('/^stage\.|\.dev$/', $_SERVER['HTTP_HOST'])) {
$_SERVER['MAGE_IS_DEVELOPER_MODE'] = true;
}
Вот Эрик, включающий настройку на основе поддоменов, которую вы можете настроить самостоятельно.