目录
OpenCart 的技术要求
OpenCart配合使用的神经自动翻译功能需要使用 PHP 脚本(可从下方下载)。要安装Linguise脚本,您需要满足以下条件:
- 运行 PHP 7+
- Apache、LiteSpeed、NGINX、IIS 服务器
- 通过 PrestaShop 配置启用 URL 重写
如何安装 OpenCart 翻译
1. 生成 API 密钥以激活翻译
OpenCart翻译功能所必需的。简而言之,API密钥会检查哪个域名启用了哪种语言,并允许生成神经翻译页面。
复制 API 密钥并将其保存在剪贴板中。

然后,点击“Script PHP”选项卡,您将看到我们将要详细遵循的安装说明。.

2. 上传 Linguise 脚本并将其与 OpenCart连接
您需要将 Linguise 翻译脚本上传到安装了 OpenCart 的服务器上:
脚本下载完成后,解压缩并将其上传到 CMS 安装的根文件夹。.
- 请确保它位于网站的根目录OpenCart文件所在的目录)。
- 请确保文件夹保留其默认名称“ linguise ”。

如何访问 Linguise 脚本界面?
设置密码和数据库连接
进入脚本界面后,你会看到一个设置界面,你可以在其中创建密码并连接到你首选的数据库。.
你可以:
- 设置密码,以后访问此界面时需要用到该密码。.
- 根据您的设置和偏好,选择数据库类型——MySQL 或 SQLite。.
此初始设置可确保安全访问,并允许您根据自己的环境配置脚本。.

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

请确保信息正确,以便成功连接到您的 MySQL 数据库。.
MySQL 与 SQLite – 有什么区别?
MySQL 和 SQLite 都是流行的数据库系统,用于存储和管理网站及应用程序的数据。但是,它们的设计用途不同,并且存在一些关键差异:
| 功能 | SQLite | MySQL |
|---|---|---|
| 设置 | 非常简单(需要安装 SQLite) | 需要服务器设置 |
| 存储 | 单文件 | 由 MySQL 服务器管理 |
| 性能 | 非常适合小型应用 | 更适用于大型、高流量系统 |
| 用例 | 本地应用、测试、小型网站 | Web应用程序、电子商务、企业系统 |
Linguise 脚本接口:PHP平台设置
Linguise 翻译控制面板此前仅适用于 Joomla 和 WordPress,现在已扩展支持 PHP 和其他平台。此次更新使用户能够直接通过统一的界面无缝配置语言设置,例如显示选项、旗帜样式和外观自定义,而无需考虑其使用的 CMS 或框架。.

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


3. 在 OpenCart中设置语言 URL
在 OpenCart上,URL 重写通常是为了 SEO 而启用的。URL 重写使用位于服务器根目录的 .htaccess 文件。.

OpenCart中,检查 URL 重写是否已启用。使用OpenCart管理菜单:
系统 > 设置 > 默认设置 > 服务器

需要在 .htaccess 文件中配置按语言划分的 URL。只需将此代码复制到OpenCart 文件中“RewriteBase /”代码之后即可。
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]
请确保服务器上的路径 linguise/linguise.php 与 / linguise / 相同,/linguise/ 是解压脚本时的默认名称。.
4. 启用语言切换器
您现在可以使用 URL 加载所有已翻译的页面,例如:www.domain.com/fr/

语言切换器OpenCart中提供的Linguise链接。复制后,国旗语言切换器将自动加载。脚本链接如下:
控制面板linguise> 设置

然后,要将其添加到您的OpenCart安装中,请转到“设计”>“主题编辑器”,然后编辑模板的默认/页眉。
语言切换器默认显示在网站右上角的浮动位置。您可以在下一步中从 Linguise 控制面板对其进行自定义。.

SEO 重要说明:您设置的语言数量对 SEO 有很大影响。 当您设置翻译语言时,如果您有大量索引页面 (>500),搜索引擎可能会花费大量时间来处理它们。 它可能会影响您的原始语言的 SEO。 这就是为什么我们建议首先添加最多 5 种语言,然后当它被编入索引时,您可以每月批量添加 3 种语言。
设置语言切换器
Linguise中自定义语言切换器。在此处所做的任何更改都会反映在网站上。

屏幕右侧是语言切换器的预览。您可以设置以下元素:
- 3 种布局:並列、下拉菜单或弹出框
- 语言切换器位置
- 语言切换器内容
- 英语或母语的语言名称
- 标志形状和大小
- 颜色和盒子阴影
在 OpenCart 内容中加载语言切换器

要在内容管理系统 (CMS) 的特定位置显示语言切换器,您需要将位置设置为“就地显示”。
Linguise中设置好位置后,您可以添加以下短代码来启用它。点击下方代码即可将其复制到剪贴板。
[linguise]
添加完成后,前端会在您添加代码的 HTML 区域中显示国旗和语言名称。.
启用翻译本地缓存系统
您可以选择启用本地缓存系统,该系统会存储 URL 及其相关的多语言内容,从而加快页面加载速度。本地缓存可以减少 Linguise 服务器和您的网站服务器之间的数据传输。缓存仅在页面已翻译但尚未更新时才会使用。访问量最高的多语言页面的缓存将优先保留。.

您可以选择性地定义缓存存储量(以 MB 为单位)。在以下示例中,缓存已启用,缓存大小为 500MB:
/** Basic configuration **/
public $cache_enabled = true;
public $cache_max_size = 500; // In megabyte
OpenCart CMS 的特定设置
在 Configuration.php 文件中,我们还有一个设置项,允许您传递一些针对 CMS 的特定配置。默认情况下,它是自动的,但支持团队可能会要求您进行个性化设置,以使用一些特殊设置。.
OpenCart代码,这是 CMS 名称的小写形式:
/** Basic configuration **/
/*
* Update the CMS value according to your CMS
* Available CMS are: laravel, prestashop
*/
public static $cms = 'opencart';
从 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 = '';
Windows IIS 服务器上的自动翻译
在 Web.config 文件中添加与您的网站构建器对应的行。
它应该在任何其他重定向之前设置,尤其是重定向到您的 PHP 主文件之前:
NGINX 服务器上的自动翻译
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;
