prestashop displayFieldName()重载字段翻译
问题描述:
我使用MVC创建了一个新模块。prestashop displayFieldName()重载字段翻译
在我的ObjectModel类中,我重载了displayFieldName()函数,以便在用户没有很好地填写表单时获取人类阅读字段错误。
例如:“开始日期字段是必需的”而不是“需要start_date字段”。
我无法找到如何将这个领域这个功能
/* Overload */
public static function displayFieldName($field, $class = __CLASS__, $htmlentities = true, Context $context = null)
{
$fieldname = array(
'date_start' => 'Start date',
'title' => 'Title',
);
if ($fieldname[$field])
return $fieldname[$field];
else
return $field;
}
我试过很多东西,但不能从这里找到平时的L()函数中平移。 有什么想法?
答
你根本不需要那样做。它已经在PrestaShop中实施。
的BackOffice>本地化>翻译>字段名称翻译
注意,在安装过程中必须复制你的对象模型中的文件夹类。
所以,如果你调用对象模型MyDataObject必须具备:
类/ MyDataObject.php中,你必须有
<?php
class MyDataObjectCore extends ObjectModel
{
}
不要忘了“核心”的后缀,因为翻译领域功能需要它。
谢谢,它按照您所说的复制类并清除缓存/ class_index.php文件后工作。 我看到,编辑该翻译的方式去/translations/lang/fields.php,在安装过程中复制现有字段翻译的任何方式? – Axi
你可以打开/translations/lang/fields.php并在最后分配一个新的后添加: $ _FIELDS ['Zone_b068931cc450442b63f5b3d276ea4297'] ='name'; 数组索引是该字段的“ClassName”+下划线+ MD5。 $ key = $ class .'_'。md5($ field); – PrestaShopDeveloper