首页 文章

扩展magento块时出错

提问于
浏览
0

我正在尝试扩展defult magento欢迎msg块,但是我遇到了一个错误:

异常'Mage_Core_Exception',消息'无效的块类型:ModuleNameSpace_Modulename_Block_Page_Html_Welcome'在/var/www/magento/project/app/Mage.php:595

这是我的模块的config xml的相关部分:

<config>
    <!-- -->
    <global>
        <blocks>
            <page>
                <rewrite>
                    <html_welcome>ModuleNameSpace_Modulename_Block_Page_Html_Welcome</html_welcome>
                </rewrite>
            </page>
        </blocks>
    </global>
</config>

这里是扩展类

/app/code/local/ModuleNameSpace/Modulename/Page/Block/Html/Welcome.php

<?php
class ModuleNameSpace_Modulename_Page_Block_Html_Welcome extends Mage_Page_Block_Html_Welcome
{

}
?>

如果需要任何其他信息,请告诉我 . 提前致谢 .

2 回答

  • 1

    你必须指定块的类名 . 即,

    <global>
        <blocks>
            <modulename>
                <class>Mynamespace_Modulename_Block</class>
            </modulename>
        </blocks>
    </global>
    

    然后你可以像你一样打电话给你

    <block type="modulename/some" template="some.phtml">
    

    编辑

    /app/code/local/ModuleNameSpace/Modulename/Page/Block/Html/Welcome.php

    像这样更改文件夹结构

    /app/code/local/ModuleNameSpace/Modulename/Block/Page/Html/Welcome.php

    添加更改类名称

    <?php
    class ModuleNameSpace_Modulename_Block_Page_Html_Welcome extends Mage_Page_Block_Html_Welcome
    {
    }
    ?>
    
  • 0

    在这里你需要magento添加模块命名空间.....

    您的模块结构错误
    你喜欢的模块

    local>ModulennamesSpace>ModuleName>
    

    并且config.xml路径是 local>ModulennamesSpace>ModuleName>etc>config.xml

    <config>
        <!-- -->
        <global>
            <blocks>
                <page>
                    <rewrite>
                        <html_welcome>ModuleNameSpace_Modulename_Block_Page_Html_Welcome</html_welcome>
                    </rewrite>
                </page>
            </blocks>
        </global>
    </config>
    

相关问题