如何将翻译添加到 opencart 文本字符串?
How to add translation to opencart text strings?
我使用的是 Opencart v2.3.0.2。
在如何翻译一些文本字符串方面需要帮助。我已经添加了一些链接到我的 header 菜单(在 /catalog/view/theme/mytheme/template/common/header.tpl 中)使用代码:
<ul class="static_links">
<li class="head-links">
<a href="<?php echo $about_products; ?>">
<?php echo $text_products; ?>
</a>
</li>
<li class="head-links">
<a href="<?php echo $contact; ?>">
<?php echo $text_novosti; ?>
</a>
</li>
<li class="head-links">
<a href="<?php echo $contact; ?>">
<?php echo $text_onas; ?>
</a>
</li>
</ul>
我还在 footer.php 中添加了新的字符串和翻译 (/catalog/language/ru-ru/common/footer.php):
$_['text_products'] = 'О продуктах'; $_['$text_novosti'] = 'Новости'; $_['$text_onas'] = 'О нас';
最后我在 header.php 中注册了翻译 (/catalog/controller/common/header.php):
//New links in menu
$data['text_products'] = $this->language->get('text_products');
$data['text_novosti'] = $this->language->get('text_novosti');
$data['text_onas'] = $this->language->get('text_onas');
毕竟,当我打开带有菜单的页面时,它只显示 $text_products
的翻译文本。在其他地方它只显示值 text_novosti
和 text_onas
。但是应该显示来自 footer.php 的翻译。
请帮帮我,如何正确显示翻译?
或者也许有一种方法可以根据语言对文本进行硬编码?类似于:
<?php if ($lang='en') {?> <a href="#">News</a><a href="#">About us</a>
<?php } ?>
НовостиО нас
如果您想在 header.tpl 中使用您的字符串,则必须将您的字符串添加到:
catalog/language/ru-ru/common/header.php
不要:
catalog/language/ru-ru/common/footer.php
如果要硬编码,请在 header.php
中添加:
$data['lang_id'] = $this->config->get('config_language_id');
在header.tpl
中:
<?php if ($lang_id == 1) {?>
<a href="#">News</a>
<a href="#">About us</a>
<?php } else if ($lang_id == 2) {?>
<a href="#">Новости</a>
<a href="#">О нас</a>
<?php } ?>
我使用的是 Opencart v2.3.0.2。 在如何翻译一些文本字符串方面需要帮助。我已经添加了一些链接到我的 header 菜单(在 /catalog/view/theme/mytheme/template/common/header.tpl 中)使用代码:
<ul class="static_links">
<li class="head-links">
<a href="<?php echo $about_products; ?>">
<?php echo $text_products; ?>
</a>
</li>
<li class="head-links">
<a href="<?php echo $contact; ?>">
<?php echo $text_novosti; ?>
</a>
</li>
<li class="head-links">
<a href="<?php echo $contact; ?>">
<?php echo $text_onas; ?>
</a>
</li>
</ul>
我还在 footer.php 中添加了新的字符串和翻译 (/catalog/language/ru-ru/common/footer.php):
$_['text_products'] = 'О продуктах'; $_['$text_novosti'] = 'Новости'; $_['$text_onas'] = 'О нас';
最后我在 header.php 中注册了翻译 (/catalog/controller/common/header.php):
//New links in menu
$data['text_products'] = $this->language->get('text_products');
$data['text_novosti'] = $this->language->get('text_novosti');
$data['text_onas'] = $this->language->get('text_onas');
毕竟,当我打开带有菜单的页面时,它只显示 $text_products
的翻译文本。在其他地方它只显示值 text_novosti
和 text_onas
。但是应该显示来自 footer.php 的翻译。
请帮帮我,如何正确显示翻译?
或者也许有一种方法可以根据语言对文本进行硬编码?类似于:
<?php if ($lang='en') {?> <a href="#">News</a><a href="#">About us</a>
<?php } ?>
НовостиО нас
如果您想在 header.tpl 中使用您的字符串,则必须将您的字符串添加到:
catalog/language/ru-ru/common/header.php
不要:
catalog/language/ru-ru/common/footer.php
如果要硬编码,请在 header.php
中添加:
$data['lang_id'] = $this->config->get('config_language_id');
在header.tpl
中:
<?php if ($lang_id == 1) {?>
<a href="#">News</a>
<a href="#">About us</a>
<?php } else if ($lang_id == 2) {?>
<a href="#">Новости</a>
<a href="#">О нас</a>
<?php } ?>