Hay algunas extensiones agradables para desarrolladores de Magento que generalmente no desea tener en un sistema en vivo.
¿Cómo puede mantenerlos en el repositorio del proyecto pero evitar que se expongan en una tienda en vivo?
Hay algunas extensiones agradables para desarrolladores de Magento que generalmente no desea tener en un sistema en vivo.
¿Cómo puede mantenerlos en el repositorio del proyecto pero evitar que se expongan en una tienda en vivo?
Hay dos técnicas relativamente nuevas para hacerlo:
Use modman para que pueda controlar por sí mismo qué implementar para cada entorno. Esto significa que modman deploy [name-of-dev-extension]
solo se ejecuta en su entorno de desarrollo.
Utilice magento-composer con diferentes composer.json
escenarios para diferentes entornos. Y una forma aún más fácil es especificar esas extensiones como módulos de desarrollo y luego instalar el proyecto usando el --require-dev
interruptor en su máquina de desarrollo.
Por lo general, estos se pueden desactivar convenientemente con un indicador de configuración, por lo que son técnicamente activos pero no hacen nada. Si configura este indicador en falso en
app/etc/local.xml
su sistema en vivo, debería estar bien.fuente
local.xml
archivo en su repositorio. Que podría ser un caso.local.xml
generalmente no está en el repositorioVea MageTrashApp que se creó recientemente en el Magento Hackathon en Berlín. Le permite desactivar módulos a través del panel de administración.
fuente
Una forma simple de hacer esto es deshabilitar el módulo en / etc / modules, presionarlo, ignorar el archivo localmente y habilitarlo nuevamente.
fuente
Creo que la mejor manera de lidiar con esto es mantener todos esos módulos en el codePool local y deshabilitar todos los módulos locales en vivo con esta línea en su local.xml:
O puede hacer "Desactivar la salida del módulo" en el back-end de su entorno en vivo. (Sistema -> Configuración -> Avanzado). Sin embargo, esto no deshabilita por completo el módulo. Pero tal vez sea suficiente de querer esconderte de eso.
Lo único que se me ocurre es escribir algún código que pueda llevarlo a cabo. Simplemente verifique si está en modo desarrollador (
Mage::getIsDeveloperMode()
) y luego deshabilite los módulos. Encontré algunos detalles más sobre cómo lograr esto aquí: /programming/6520634/magento-how-to-disable-module-programmaticfuente
local
módulos lo obligará a mover todos los demás módulos delocal
codePoolcommunity
y también lo hará para todas las extensiones futuras. Deshabilitar la salida de los módulos como dijiste aún permite que la extensión se ejecute ralentizando tu tienda. Y la tercera solución requerirá modificaciones que se sobrescribirán con la actualización de las extensiones.Por lo general, solo los pongo en mi entorno de prueba, pero no los verifico en el sistema de control de versiones, por ejemplo, usando el
.gitignore
archivo para excluirlos de ser considerados para comprometerse.fuente
Hay una diapositiva en la conferencia Imagine 2011 de Erik Hansen. Indicó un código en la diapositiva que es el siguiente (para el modo desarrollador)
aquí está, Erik habilita una configuración basada en los subdominios que puede personalizar usted mismo.
fuente