Opencart v2.3的多语言横幅

  • 本文关键字:语言 v2 Opencart opencart
  • 更新时间 :
  • 英文 :


我有一个多种语言的Opencart商店。横幅只能包含一张图片(无论选择哪种语言),我为每种语言设计了横幅。

开车 v 2.3.0.2

catalog/./view/theme/default/template/extension/module/banner.tpl

<div id="banner<?php echo $module; ?>" class="owl-carousel">
<?php foreach ($banners as $banner) { ?>
<div class="item">
<?php if ($banner['link']) { ?>
<a href="<?php echo $banner['link']; ?>"><img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" class="img-responsive" /></a>
<?php } else { ?>
<img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" class="img-responsive" />
<?php } ?>
</div>
<?php } ?>
</div>

您必须手动(使用 FTP)管理横幅图像文件,但这样的方法可能可行:

  • 对于要显示的每个横幅,请像往常一样在后台上传。
  • 在保存镜像的目录中,创建与您支持的语言对应的子目录(例如"en-gb")。
  • 此代码假定横幅位于catalog/demo/banners下。 所以它只是在其下添加了路径"language_name"。
  • 修改catalog/./view/theme/default/template/extension/module/banner.tpl以首先查看显示横幅的块中特定于语言的子目录。 在 2.3.0.2 中,这看起来像:

<?php foreach ($banners as $banner) { $lang = $this->registry->get('language'); if (file_exists($lang . "/" . $banner['image'])) { $banner['image'] = str_replace("catalog/demo/banners", "catalog/demo/banners/$lang", $banner['image']); } } ?>

<div id="banner<?php echo $module; ?>" class="owl-carousel"> <?php foreach ($banners as $banner) { ?> <div class="item"> <?php if ($banner['link']) { ?> <a href="<?php echo $banner['link']; ?>"><img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" class="img-responsive" /></a> <?php } else { ?> <img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" class="img-responsive" /> <?php } ?> </div> <?php } ?> </div>

最新更新