2010-09-28 21 views
11

Tengo una pregunta sobre el directorio local de Magento.Magento: el controlador local no funciona

Estoy tratando de anular un controlador central - Mage/Contacts/controllers/IndexController.php.

Así que copian IndexController.php a /app/local/Mage/Contacts/controllers/

pero Magento sigue utilizando el archivo central. Puedo confirmarlo porque veo la página 404 cuando cambio el nombre de Mage/Contacts/controllers/IndexController.php a IndexController.php_.

Por favor, avísenme.

Gracias!

+1

tienen el mismo problema, solución - http://stackoverflow.com/questions/19814600/magento-copy-controller-to-local?answertab=votes#tab- arriba –

Respuesta

21

La copia de un controlador en la ruta app/code/local no funciona desafortunadamente debido a la arquitectura de autocarga de Magento. Funciona con bloques, modelos y otros objetos, pero no con controladores.

Hay una guía detallada de cómo anular un controlador en el wiki. Y un blog post por @prattski

Intente seguirlos, luego vuelva con cualquier pregunta específica.

HTH, JD

+0

¡Funciona! ¡Gracias! – Moon

+0

Para mí, no sirve para algunos bloques (por ejemplo, /local/Mage/GoogleAnalytics/Block/Ga.php). Realmente me gustaría saber el algoritmo que Magento usa para determinar cuándo usar instancias de directorio local y cuándo no. –

Cuestiones relacionadas