2012-07-18 56 views
0

with prestashop 1.4.8,PHP 5.3我想在模块中做到这一点。

$myVar = 'Vincent'; 
echo $this->l($myVar); 

我不知道为什么它不工作,以及如何处理

echo $this->l('Vincent') 

我需要这样做becose标签“真正的”差异来自XML文件从我自己的模块配置系统。

有什么想法吗?

谢谢大家。

+1

@Brice基本上说你的代码似乎没有问题,你确定你从XML文件收集的数据不是'NULL'吗? – 2012-08-17 13:02:08

回答

2

嗨,

当你想在翻译的Prestashop的东西,你必须使用l函数。

此:

$fieldToTranslate = $this->l('My Text to translate'); 
echo $fieldToTranslate; 

是类似于:

echo $this->l('My Text to translate'); 

使用回声,你应该看到所选语言翻译string..depending ..

如果是这样不工作,那么你应该检查l函数是否可用于你的模块...你是否继承了正确的类?等

希望这有助于

BR,

0

你试试这个?

$myVar = 'Vincent'; 
echo $this->l($myVar, 'your module name'); 
0

有点晚了,但这里是我的2美分。

原因是,Prestashop需要一个文字字符串。将变量传递给prestashops转换函数是没有意义的。如果要翻译的单词可能是任何字符串,翻译模块如何知道使用哪个翻译?

我想这也是双引号字符串不工作的原因......他们可能包含变量。