目录
ExpressionEngine CMS 技术要求
与 ExpressionEngine CMS 一起使用的神经自动翻译需要使用 PHP 脚本(可以在下面下载)。 要安装 Linguise 脚本,您需要满足以下要求:
- 运行 PHP 7+
- Apache、IIS 或 NGINX
- 确保您的服务器上启用了 URL 重写
- ExpressionEngine CMS 6 及更高版本
生成API密钥

之后,您将得到:
- 验证您的会员资格的 API 密钥
- 语言切换器的 Linguise 脚本的链接

API 密钥是在您的 ExpressionEngine CMS 网站上激活翻译所需的密钥。 基本上,API 密钥将检查您的域上激活的语言并允许自动翻译内容。
现在,您可以复制 API 密钥并将其保存在剪贴板中。
上传并连接 Linguise 翻译脚本
Linguise 翻译脚本需要上传到安装了 ExpressionEngine CMS 的服务器上。 在这里下载。
下载脚本后,解压并上传至 ExpressionEngine CMS安装根文件夹。
- 确保将其放置在您网站的根级别 ExpressionEngine CMS 文件所在的位置)
- 确保文件夹保留其默认名称“ linguise ”

如何访问 Linguise 脚本接口?
完成Linguise安装后,您可以通过以下URL格式访问网站:
https://www.domain.com/linguise
根据您的网站地址更改域地址*
确保Linguise具有适当的读写和写入许可*
设置密码和数据库连接
访问脚本接口后,您将提供一个设置屏幕,您可以在其中创建密码并连接到首选的数据库。
你可以:
- 设置一个密码,这是对将来访问此接口所需的密码。
- 根据您的设置和偏好,选择您的数据库类型 - MySQL或SQLite。
此初始设置可确保安全访问权限,并允许您根据环境配置脚本。

MySQL数据库连接
如果您选择MySQL,则会出现不同的接口,要求以下MySQL配置字段的以下连接详细信息:

确保信息是正确的,以建立与您的MySQL数据库的成功连接。
mysql vs sqlite - 有什么区别?
MySQL和SQLite都是流行的数据库系统,用于存储和管理网站和应用程序的数据。但是,它们是针对不同用例设计的,并且有一些关键差异:
特征 | sqlite | mysql |
---|---|---|
设置 | 非常简单(需要安装SQLite) | 需要服务器设置 |
贮存 | 单文件 | 由MySQL Server管理 |
表现 | 非常适合小型应用程序 | 更好的是大型高流量系统 |
使用案例 | 本地应用程序,测试,小网站 | Web应用程序,电子商务,企业系统 |
Linguise 脚本接口:PHP平台的设置
以前仅适用于 Joomla 和 WordPressLinguise 翻译仪表板现在向PHP和其他平台扩展了支持。此更新允许用户无缝配置语言设置(例如显示选项,标志样式和外观自定义),无论其CMS或框架如何,都可以从统一的界面中直接配置。

管理员可以更有效地管理 Linguise 设置,具有一致的功能,例如语言选择弹出窗口,阴影效果和特定于区域的标志选择变体。仪表板保留了其用户友好的设计,同时为各种网络环境提供了更广泛的兼容性。


设置 ExpressionEngine CMS URL 重写
默认情况下,URL 重写在 ExpressionEngine CMS 中处于活动状态。 如果不是这种情况,您可以从托管提供商处激活它。
需要在 .htaccess 中配置按语言划分的 URL。 默认ExpressionEngine CMS 代码“ RewriteEngine on ”。
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]
您现在可以使用 URL 加载所有已翻译的页面,例如:www.shop.com /fr/
现在让我们加载语言切换器。
激活语言切换器
加载 Linguise Javascript
需要在所有 ExpressionEngine CMS 页面上加载 Linguise Javascript 链接,以在 HTML 标头中显示带有标记和备用 URL 的语言切换器(用于 SEO 目的)。
要复制脚本链接,请从 Linguise 仪表板转到域设置并复制脚本链接。

Concrete CMS中加载此代码的最简单方法是将其添加到您的网站header.php或 代码。
您可以按照以下步骤进行设置:访问管理面板,然后在左侧转到模板>布局> _html-wrapper 。 默认情况下,您可以使用此方法。
编辑脚本文件以将脚本链接包含在标题部分中,如下所示。

默认情况下,语言切换器将显示在网站右上角的浮动位置。 欢迎您按照下一章中的说明进行自定义。

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

在屏幕右侧,您可以预览语言切换器。 以下是您可以设置的元素:
- 3 种布局:并排、下拉或弹出
- 语言切换器位置
- 语言切换器内容
- 英语或母语的语言名称
- 旗帜形状和尺寸
- 颜色和盒子阴影
在 ExpressionEngine 内容中加载语言切换器

要在CMS内容中的特定位置显示语言切换器,您应该将位置设置为“就地”。
Linguise中设置位置后,您可以添加下面的短代码以包含它。 单击下面的代码将其放入剪贴板。
[linguise]
添加后,在前端,您将在添加代码的 HTML 区域中显示标志和语言名称。
激活本地缓存系统选项
作为一种选择,您可以激活存储 URL 及其相关多语言内容的本地缓存系统,以更快地为页面提供服务。 本地缓存将节省 Linguise 服务器和您的网站服务器之间的一些数据传输。 仅当页面已翻译且尚未更新时才使用缓存。 优先保留的缓存将是浏览次数最多的多语言页面的缓存。
为了补充这一点,您可以定义以 MB 为单位存储的缓存量。 在以下示例中,缓存已激活并且要保留的缓存量为 500 MB。

/** Basic configuration **/
public $cache_enabled = true;
public $cache_max_size = 500; // In megabyte
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;
Windows IIS 服务器上的自动翻译
在 Web.config 文件中添加与您的网站构建器相对应的行。
它应该在任何其他重定向之前设置,尤其是重定向到 PHP 主文件:
从 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 = '';