{l s ='接受PayPal'mod ='paypal'}中's'的含义是什么?

问题描述 投票:-1回答:2

我是Prestashop的新手。学习的同时我发现了这一点

{l s='Accept PayPal' mod='paypal'}

我很好奇在上面的陈述中意味着什么。我知道我是语言,但我不知道s的含义。

prestashop prestashop-1.7 smarty3
2个回答
2
投票

s表示字符串,是要翻译的字符串。

l()是我们在PrestaShop中添加的自定义Smarty函数,用于使模板(.tpl文件)可翻译。

我们在第86行的/config/smarty.config.inc.php注册了它:

smartyRegisterFunction($smarty, 'function', 'l', 'smartyTranslate', false);

然后将它添加到\config\smartyfront.config.inc.phpconfig\smartyadmin.config.inc.php

function smartyTranslate($params, $smarty)

您可以使用以下参数:


mod仅在模块模板(.tpl)文件中使用,具有相关模块的名称

示例:{l s='My module text' mod='mymodulename'}


js要在JavaScript代码块中使用,翻译的内容将被转义

示例:var my_var = '{l s='Delete' d='Admin.Actions' js=1}';


pdf用于参考pdf文件

示例:{l s='Note' d='Shop.Pdf' pdf='true'}


d用于引用特定的翻译文件

示例:{l s='No menu' d='Admin.Advparameters.Feature'}


sprintf如果在翻译的字符串中有变量,则使用

示例:{l s='My variable is %s' sprintf=[$my_var|escape:'html':'UTF-8']}


您可以在PrestaShop 1.7文档here中找到更多信息。


0
投票

“s”只是意思是“字符串”,而“l”是“语言”,所以为什么不使用“m”而不是“mod”;)

© www.soinside.com 2019 - 2024. All rights reserved.