Magento 2:每个区域设置不同的静态内容文件?


16

在Magento 2中,静态内容网址如下所示

http://magento-2-with-keys.dev/static/adminhtml/Magento/science/en_US/Pulsestorm_FrontendTutorial1/hello.js

这包括en_US语言环境部分。这强烈暗示着

  1. Magento 2允许您根据语言环境创建不同的静态内容文件
  2. Magento 2处理语言环境/ gettext字符串的静态内容文件

以上哪一项是正确的?还是都是真的?还是没有?

作为Magento模块开发人员,我如何在每个区域设置基础上提供静态内容文件?如果我是主题开发人员,这会有所不同吗?

Answers:


13

Magento允许在模块或主题的每个区域提供静态资产文件。要提供此类本地化文件,请将其web/i18n/<locale>放在模块或主题内的文件夹下。这些文件的优先级高于未本地化的文件。


我们如何在phtml中进行更改?是否有可能,因为在某些情况下,我需要在phtml级中添加或删除某些东西,在这种情况下,该如何做以及如何布局xml?
Pradeep Kumar

而且一些我的自定义变量或更小的文件还需要在这种情况下,改变该怎么办呢
普拉迪普库马尔

3
相同。仅phtml文件应位于文件夹下templates,布局应位于layout文件夹下。对于主题-这是目录的第一级,对于模块-应该在之下view/<area>
BuskaMuza

@BuskaMuza对不起,我尝试了XML和PHTML的不同变体,但没有。说我的本地地址是ar_EG,我想在中插入一个新的CSS文件default_head_blocks.xml。该文件是从theme\Magento_Theme\layout... 调用的,我的替代网址到底应该是什么?
艾哈迈德·阿尔菲

2
default_head_blocks.xml不应该对语言环境一无所知。CSS的路径应在XML中引用为<module>::css/<file>.css(对于模块化文件)或css/<file>.css(对于主题文件)。如果将本地化的CSS文件放在<modue>/view/<area>/web/i18n/ar_EG/css/<file>.css或中<theme>/web/i18n/ar_EG/css/<file>.css,则应将其自动用于已ar_EG选择语言环境的商店。
BuskaMuza

1

您可以通过覆盖默认文件来扩展主题,而不是使用其他语言编写完整的单独文件。extend.less或theme.less文件中的任何一个。下面是可以覆盖的结构。

yourtheme / web / i18n / yourlocale

例如 :

应用程序\设计\前端\ Magento \ luma_custom \ web \ i18n \ ar_KW \ css \ source_theme.less

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.