在 Zen Cart上安装 Linguise 自动翻译

目录

Zen Cart CMS 技术要求

与 Zen Cart CMS 配合使用的神经自动翻译功能需要使用 PHP 脚本(可从下方下载)。要安装 Linguise 脚本,您需要满足以下条件:

  • 运行 PHP 7+
  • Apache、NGINX
  • 请确保您的服务器已启用 URL 重写功能。
  • Zen Cart CMS 1.5.x 及以上版本

1. 生成 API 密钥

在您连接或注册到Linguise控制面板,您需要先设置一个新域名并保存其设置以获取 API 密钥。

您可以选择“其他 PHP”平台来继续进行 Linguise 注册域名,例如本文档以及源语言和目标语言。.

网站平台和翻译语言设置

之后,您将获得:

  • 用于验证您会员资格的 API 密钥
  • 语言切换器的 Linguise 脚本链接
网页截图,其中包含一个关于网站翻译的视频

API密钥是激活 Zen Cart CMS网站翻译功能所必需的。简而言之,API密钥会检查您的域名已启用哪些语言,并允许自动翻译内容。.

目前,您可以复制 API 密钥并将其保存在剪贴板中。.

2. 上传并连接 Linguise 翻译脚本

您需要将 Linguise 翻译脚本上传到安装了 Zen Cart CMS 的服务器上。请点击此处下载。.

脚本下载完成后,将其解压缩并上传到 Zen Cart CMS 的安装根文件夹。.

  • 请确保将其放置在网站的根目录Zen Cart CMS 文件所在的目录)。
  • 请确保文件夹保留其默认名称 linguise ”。
ZenCart-CMS 文件

如何访问 Linguise 脚本界面?

Linguise完成后,您可以通过访问以下 URL 格式的网站来访问控制面板:
https: linguise

请根据您的网站地址更改域名地址*
确保Linguise拥有适当的读写权限*

设置密码和数据库连接

进入脚本界面后,你会看到一个设置界面,你可以在其中创建密码并连接到你首选的数据库。.

你可以:

  • 设置密码,以后访问此界面时需要用到该密码。.
  • 根据您的设置和偏好,选择数据库类型——MySQL 或 SQLite。.

此初始设置可确保安全访问,并允许您根据自己的环境配置脚本。.

MySQL数据库连接

如果您选择 MySQL,将会出现一个不同的界面,要求您输入以下 MySQL 配置字段的连接详细信息:

请确保信息正确,以便成功连接到您的 MySQL 数据库。. 

MySQL 与 SQLite – 有什么区别?
MySQL 和 SQLite 都是流行的数据库系统,用于存储和管理网站及应用程序的数据。但是,它们的设计用途不同,并且存在一些关键差异:

功能SQLiteMySQL
设置非常简单(需要安装 SQLite)需要服务器设置
存储单文件由 MySQL 服务器管理
性能非常适合小型应用更适用于大型、高流量系统
用例本地应用、测试、小型网站Web应用程序、电子商务、企业系统

Linguise 脚本接口:PHP平台设置

Linguise 翻译控制面板此前仅适用于 Joomla 和 WordPress,现在已扩展支持 PHP 和其他平台。此次更新使用户能够直接通过统一的界面无缝配置语言设置,例如显示选项、旗帜样式和外观自定义,而无需考虑其使用的 CMS 或框架。.

API接口

管理员可以更高效地管理 Linguise 设置,它拥有统一的功能,例如语言选择弹出窗口、阴影效果和特定区域的旗帜选项。控制面板保持了其用户友好的设计,同时增强了对各种 Web 环境的兼容性。.

显示界面
外观界面
我们理解网址配置和语言切换器设置起来有点技术性;不过好消息是!我们提供免费安装服务。

3. 设置 Zen Cart CMS URL 重写

Zen Cart CMS 默认启用 URL 重写功能。如果未启用,您可以从您的主机提供商处启用此功能。.

需要在 .htaccess 文件中配置按语言分类的 URL。只需将以下代码复制到默认Zen Cart CMS RewriteEngine on

				
					<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
</IfModule>
				
			

您现在可以使用 URL 加载所有已翻译的页面,例如: www.shop.com/fr/

现在我们来加载语言切换器。.

我们理解网址配置和语言切换器设置起来有点技术性;不过好消息是!我们提供免费安装服务。

4. 启用语言切换器

4.1 加载 Linguise JS 脚本

需要在所有 Zen Cart CMS 页面上加载 Linguise JS 脚本链接,以便在 HTML 标头中显示带有标志和备用 URL 的语言切换器(用于 SEO 目的)。.

要复制脚本链接,请从 Linguise 控制面板转到域设置并复制脚本链接。.

图示为模块安装步骤。图中有一条向上延伸的蓝色虚线。.

Zen Cart 中加载此代码的最简单方法是将其添加到您的网站头部或代码。Zen Zen Cart CMS 自带一个模板,其中包含一个头部区域,并且有一个专门的文件用于在头部区域Linguise

它位于tpl_header.php 文件,您可以通过导航到以下 CMS 安装文件夹找到它。在本例中,它是默认的Zen Cart CMS 模板,名为 responsive_classic:
/includes/template/*YOUR_TEMPLATE*/common/tpl_header.php。

编辑脚本文件,在头部部分添加如下所示的脚本链接。.

语言切换器默认显示在网站右下角的浮动位置。您可以根据下一章的说明对其进行自定义。.

ZenCart-CMS语言切换器

SEO 重要说明:您设置的语言数量对 SEO 有很大影响。 当您设置翻译语言时,如果您有大量索引页面 (>500),搜索引擎可能会花费大量时间来处理它们。 它可能会影响您的原始语言的 SEO。 这就是为什么我们建议首先添加最多 5 种语言,然后当它被编入索引时,您可以每月批量添加 3 种语言。

设置语言切换器

您可以在 Linguise 控制面板 > 设置 > 语言标志显示 中自定义语言切换器。在此处所做的任何更改都会反映在网站上。.

屏幕截图显示了用于选择语言设置的下拉菜单,其中包含英语选项。

在屏幕右侧,您可以预览语言切换器。 以下是您可以设置的元素:

  • 3 种布局:並列、下拉菜单或弹出框
  • 语言切换器位置
  • 语言切换器内容
  • 英语或母语的语言名称
  • 标志形状和大小
  • 颜色和盒子阴影

在 Zen Cart 内容中加载语言切换器

旗帜位置已确定

Zen Cart中的特定位置显示语言切换器,您需要将位置设置为“就地显示”。Linguise
中设置好位置后,您可以添加以下短代码来启用它。点击下方代码即可将其复制到剪贴板。

				
					<div>&#091;linguise&#093;</div>
				
			

添加完成后,前端会在您添加代码的 HTML 区域中显示国旗和语言名称。.

启用本地缓存系统选项

您可以选择启用本地缓存系统,该系统会存储 URL 及其相关的多语言内容,从而加快页面加载速度。本地缓存可以减少 Linguise 服务器和您的网站服务器之间的数据传输。缓存仅在页面已翻译但尚未更新时才会使用。访问量最高的多语言页面的缓存将优先保留。.

此外,您还可以定义缓存的存储量(以 MB 为单位)。在以下示例中,缓存已启用,缓存大小设置为 500 MB。.

Laravel 翻译配置代码示例。用于设置翻译的配置。.
				
					    /** Basic configuration **/
    public $cache_enabled = true;
    public $cache_max_size = 500; // In megabyte
				
			

NGINX 服务器上的自动翻译

在 NGINX 服务器配置块中添加与您的 CMS 对应的行。.
它应该在任何其他重定向之前设置,尤其是 PHP 主文件中的重定向。.
				
					rewrite ^/(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ /linguise/linguise.php?linguise_language=$1&original_url=$2 last;
				
			

从 SQLite 到 MySQL

Configuration.php 文件中仍然有一个设置,可以强制使用 MySQL 而不是 SQLite,以防服务器上没有安装 SQLite。.

在这种情况下,您需要在Configuration.php 文件的这一部分填写 MySQL 信息:

				
					    /** Advanced database configuration **/
    /*
     *  In case you don't want to use Sqlite, you can use MySQL
     *  To do so, you need to fill the following variables
     *  Linguise will create the tables for you
     */
    public static $db_host = '';
    public static $db_user = '';
    public static $db_password = '';
    public static $db_name = '';
    public static $db_prefix = '';