目录
Moodle LMS 技术要求
与Moodle LMS 一起使用的神经自动翻译需要使用 PHP 脚本(可以在下面下载)。要安装Linguise脚本,您需要满足以下要求:
- 运行 PHP 7+
- Apache、IIS 或 NGINX 服务器
- 确保您的服务器上启用了 URL 重写
生成API密钥
之后,您将得到:
- 验证您的会员资格的 API 密钥
- 语言切换器的Linguise脚本的链接
API 密钥是在Moodle LMS 网站上激活翻译所需的密钥。基本上,API 密钥将检查您的域上激活的语言并允许自动翻译内容。
现在,您可以复制 API 密钥并将其保存在剪贴板中。
上传并连接Linguise翻译脚本
Linguise翻译脚本需要上传到安装了Moodle LMS 的服务器上。在这里下载。
下载脚本后,解压并上传到Moodle LMS安装的根文件夹。
- 确保它位于您网站的根级别Moodle LMS 文件所在的位置)
- 确保文件夹保留其默认名称“ linguise ”
需要将 Linguise API 密钥复制到您上传到服务器的 Configuration.php 文件中,编辑该文件并在简单引号之间复制您的 API 密钥,替换文本 REPLACE_BY_TOUR TOKEN Linguise
设置Moodle LMS URL 重写
默认情况下, Moodle LMS 中的 URL 重写处于活动状态。如果不是这种情况,您可以从托管提供商处激活它。
需要在 .htaccess 中配置按语言划分的 URL。只需将以下代码复制到默认Moodle LMS “ 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|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
需要在所有Moodle LMS 页面上加载Linguise Javascript 链接,以在 HTML 标头中显示带有标记和备用 URL 的语言切换器(出于 SEO 目的)。
要复制脚本链接,请从Linguise仪表板转到域设置并复制脚本链接。
Moodle 中加载此代码的最简单方法是将其添加到您的网站中代码。
您可以按照以下步骤进行设置:访问“站点管理” ,然后转至“设置”>“站点管理”>“外观”>“其他 HTML”。 默认情况下,您可以使用此方法。
在标题部分包含脚本链接,如下所示。
默认情况下,语言切换器将显示在网站右下角的浮动位置。 欢迎您按照下一章中的说明进行自定义。
SEO 重要说明:您设置的语言数量对 SEO 有很大影响。 当您设置翻译语言时,如果您有大量索引页面 (>500),搜索引擎可能会花费大量时间来处理它们。 它可能会影响您的原始语言的 SEO。 这就是为什么我们建议首先添加最多 5 种语言,然后当它被编入索引时,您可以每月批量添加 3 种语言。
设置语言切换器
可以通过Linguise仪表板 > 设置 > 语言标志显示来自定义语言切换器。 这里的每一个修改都会反映在网站上。
在屏幕右侧,您可以预览语言切换器。 以下是您可以设置的元素:
- 3 种布局:并排、下拉或弹出
- 语言切换器位置
- 语言切换器内容
- 英语或母语的语言名称
- 旗帜形状和尺寸
- 颜色和盒子阴影
在Moodle LMS 内容中加载语言切换器
要在CMS内容中的特定位置显示语言切换器,您应该将位置设置为“就地”。
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 = '';