我正在尝试覆盖 Mage_Customer_Block_Form_Login 中的函数 _prepareLayout() 以在页面上有登录区域(即每个页面)时停止使用“客户登录”填充标题。
我在 app/code/local/My/Module/etc/config.xml 中的 config.xml:
<?xml version="1.0"?>
<config>
<modules>
<My_Module>
<version>0.1.0</version>
</My_Module>
</modules>
<global>
<blocks>
<customer>
<rewrite>
<form_login>My_Module_Block_Customer_Form_Login</form_login>
</rewrite>
</customer>
</blocks>
</global>
</config>
我在 app/etc/modules 中的 My_Module.xml:
<?xml version="1.0"?>
<config>
<modules>
<My_Module>
<active>true</active>
<codePool>local</codePool>
</My_Module>
</modules>
</config>
我在 app/code/local/My/Module/Customer/Form/Login.php 中的 Login.php
class My_Module_Block_Customer_Form_Login extends Mage_Customer_Block_Form_Login
{
protected function _prepareLayout()
{
return parent::_prepareLayout();
}
}
我已经尝试了所有我能想到的排列方式,但标题仍然在有登录表单且没有生成错误日志的页面上显示“客户登录”。当我将核心文件中的功能更改为上述功能时,它可以工作,所以我不知道为什么在覆盖类时它不起作用?
任何想法都非常欢迎!
非常感谢