在开发一个将在任何特定项目范围之外重用的模块时,即使用社区代码池,我应该使用基本主题来存储我的模板、布局和皮肤文件吗?
我几乎 100% 肯定我应该这样做,但是我看到这么多的社区模块使用默认的皮肤和主题目录,以至于它已经种下了一个小小的怀疑种子。
在开发一个将在任何特定项目范围之外重用的模块时,即使用社区代码池,我应该使用基本主题来存储我的模板、布局和皮肤文件吗?
我几乎 100% 肯定我应该这样做,但是我看到这么多的社区模块使用默认的皮肤和主题目录,以至于它已经种下了一个小小的怀疑种子。
是的,你绝对应该使用base/default
你的社区模块主题——这样做你正在利用 Magento 提供的后备层次结构,允许你的主题是可移植的并且易于被希望这样做的客户扩展。
我不期待这个答案的支持,但想澄清蒂姆和德鲁的答案:
不幸的是,目前 Magento 只为我们提供了 3 个级别的后备:
因为'current_package' 在标准Magento 安装中是'default',你经常会看到扩展开发者将他们的文件放在'default/default' 中。这是一个糟糕的决策,因为这意味着在指定非默认包时将不再找到文件。
显然,将文件放在“基本/默认”中也不是最佳位置,因为从某种意义上说,您正在消除核心文件和第 3 方文件之间的区别。正如其他人所提到的,现在它是可靠地添加文件同时仍然允许回退的唯一方法。
幸运的是,这在 Magento 2 中不会成为问题,因为这些文件将成为模块的一部分,从而允许几乎无限的回退。
是的。最佳实践是创建
app/design/frontend/base/default/template/your_extension_dir/
和
app/design/frontend/base/default/layout/your_extension_dir/
并将您的文件放在那里。