php – 覆盖Magento Contacts Controller

前端之家收集整理的这篇文章主要介绍了php – 覆盖Magento Contacts Controller前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图覆盖Mage / Contacts / IndexController.PHP

我在本地创建了一个文件夹,并创建了Mynamespace / CustomContacts / controllers / IndexController.PHP

  1. <?PHP
  2.  
  3. require_once 'Mage/Contacts/controllers/IndexController.PHP';
  4.  
  5. class Mynamespace_CustomContacts_IndexController extends Mage_Contacts_IndexController {
  6.  
  7. protected function indexAction () {
  8. die;
  9. }
  10. }

我还将此代码放在Mynamespace / CustomContacts / etc / config.xml中

  1. <config>
  2. <frontend>
  3. <routers>
  4. <contacts>
  5. <args>
  6. <modules>
  7. <Mynamespace_CustomContacts before="Mage_Contacts">Mynamespace_CustomContacts</Mynamespace_CustomContacts>
  8. </modules>
  9. </args>
  10. </contacts>
  11. </routers>
  12. </frontend>
  13. </config>

我清理了缓存,但我死了;不起作用,

谢谢你的帮助

1.最佳实践

您的config.xml文件如下所示:

  1. <?xml version="1.0"?>
  2. <config>
  3. <modules>
  4. <Mynamespace_CustomContacts>
  5. <version>0.1.0</version>
  6. </Mynamespace_CustomContacts>
  7. </modules>
  8. <frontend>
  9. <routers>
  10. <contacts>
  11. <args>
  12. <modules>
  13. <Mynamespace_CustomContacts before="Mage_Contacts">Mynamespace_CustomContacts</Mynamespace_CustomContacts>
  14. </modules>
  15. </args>
  16. </contacts>
  17. </routers>
  18. </frontend>
  19. </config>

2.糟糕的做法

您可以在app / local / Mage / Contacts / controllers / IndexController.PHP中移动控制器以进行硬覆盖.

并且不要忘记在app / etc / modules目录中的xml文件中启用您的模块

猜你在找的PHP相关文章