在编写我自己的magento扩展时,应该在哪里放置其他文件?

MaG*_*tas 3 structure recommendation-engine magento

我正在写我的magento扩展并想出了一个问题.主扩展文件/目录结构非常清楚.我们有扩展配置文件,模型,帮助器,数据库资源,前端和后端脚本和样式表等的目录.

但是如果我的扩展使用一些不是类或资源的文件来包含在前端或后端呢?

例如:图像文件只会附加到电子邮件中,并且永远不会被浏览器直接检索.

应该/我可以只创建一个目录/ app/code/community/MyNamespace/MyExtensionName/images吗?

相同的目录树,以提高可读性:

app
    code
        community
            MyNamespace
                MyExtensionName
                    images
Run Code Online (Sandbox Code Playgroud)

或者还有其他正确/推荐的方法来实现吗?

Ala*_*orm 8

关于如何从Magento Inc.本身做到这一点,从来没有明确的指导,Magento的模块结构没有提供明确的指导.我一直采取的方法是

  1. 假装我在Magento核心团队

  2. 假装我的团队成员是反社会人士,他们不关心我是否做过任何休息

如果您要添加的前端文件用于公共消费的(给js,skin,etc),我总是创造是我的全模块名的小写版本的文件夹,并丢弃所有档案

/js/namespace_modulename/file.js
Run Code Online (Sandbox Code Playgroud)

对于不会公开提供的文件(即您只需要通过PHP访问它们),在模块的根目录中创建一个文件夹(如上所述)是合适的.我建议像

app
    code
        community
            MyNamespace
                MyExtensionName
                    assets
                        images
Run Code Online (Sandbox Code Playgroud)

你永远不知道什么时候会有你想要添加的东西,并且将所有内容放在一个文件夹下将有助于保持模块结构的清洁.

在Magento的核心代码中,甚至还有一个先例.看看吧

app/code/core/Mage/Sales/doc
Run Code Online (Sandbox Code Playgroud)

夹.