系统学习magento二次开发,推荐小册:《Magento中文全栈二次开发 》
本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。
在 Magento 2 中,您可以使用字典来定义一组特定的字符串,以便稍后在代码中使用。这是一种管理字符串的有效方法,因为它可以使您在代码中更轻松地进行更改和重复使用。以下是在 Magento 2 中使用字典自定义字符串的代码示例:
首先,在您的自定义模块的目录下创建一个名为 i18n 的文件夹(如果尚未存在)。
在 i18n 文件夹中创建一个名为 en_US.csv 的文件。这是您的字典文件,其中“en_US”是语言和地区的标识符,表示英语(美国)。
在 en_US.csv 文件中,输入以下内容:
"Hello","Hello" "My Custom String","My Custom String"
这些行定义了两个字符串:Hello 和 My Custom String。左侧的字符串是标识符,右侧的字符串是实际要显示的文本。
在您的代码中,您可以使用以下代码加载字典并获取字符串:
namespace Your\Module\Block; use Magento\Framework\View\Element\Template; class YourBlock extends Template { protected $_objectManager; protected $_helperData; public function __construct( Template\Context $context, \Your\Module\Helper\Data $helperData, array $data = [] ) { $this->_objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $this->_helperData = $helperData; parent::__construct($context, $data); } public function getHelloString() { return $this->_helperData->__('Hello'); } public function getCustomString() { return $this->_helperData->__('My Custom String'); } }
在上面的示例中,__() 是 Magento 2 提供的翻译函数,它将在字典中查找与传递的字符串标识符匹配的文本,并返回文本。请注意,__() 函数是在 _helperData 对象上调用的,这是您自己的帮助程序类,其中包含 __() 函数的定义。
这就是如何在 Magento 2 中使用字典自定义字符串的简单示例。您可以在 en_US.csv 文件中添加更多字符串,并在您的代码中使用相应的 __() 调用来获取这些字符串。