目录
ProcessWire CMS 技术要求
与ProcessWire CMS 一起使用的神经自动翻译需要使用 PHP 脚本(可以在下面下载)。 要安装Linguise脚本,您需要满足以下要求:
- 运行 PHP 7+
- Apache、LiteSpeed、NGINX、IIS 服务器
- 确保您的服务器上启用了 URL 重写
- ProcessWire CMS 2.x 或 3 及更高版本
1. 生成API密钥
之后你会得到:
- 验证您的会员资格的 API 密钥
- 语言切换器的Linguise脚本的链接
API 密钥是在ProcessWire CMS 网站上激活翻译所需的密钥。 基本上,API 密钥将检查您的域上激活的语言并允许自动翻译内容。
现在,您可以复制 API 密钥并将其保存在剪贴板中。
2.上传并连接Linguise翻译脚本
需要将Linguise翻译脚本上传到安装ProcessWire CMS 的服务器上:
下载脚本后,将其解压并上传到安装ProcessWire CMS 的根文件夹。
- 确保它位于您网站的根级别ProcessWire CMS 文件所在的位置)
- 确保文件夹保留其默认名称“ linguise ”
需要将 Linguise API 密钥复制到您上传到服务器的 Configuration.php 文件中,编辑该文件并在简单引号之间复制您的 API 密钥,替换文本 REPLACE_BY_TOUR TOKEN Linguise
3. 设置ProcessWire CMS URL 重写
默认情况下,URL 重写在ProcessWire CMS 中处于活动状态。 如果不是这种情况,您可以从托管提供商处激活它。
需要在 .htaccess 中配置按语言划分的 URL。 默认ProcessWire 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]
最后,您的ProcessWire CMS .htaccess 应如下所示:
# 8. Enable Apache mod_rewrite (required)
# -----------------------------------------------------------------------------------------------
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]
# 8A. Optionally (O) set a rewrite base if rewrites are not working properly on your server.
# -----------------------------------------------------------------------------------------------
您现在可以使用 URL 加载所有已翻译的页面,例如:www.shop.com /fr/
现在让我们加载语言切换器。
4. 激活语言切换器
4.1 加载Linguise JS 脚本
需要在所有ProcessWire CMS 页面上加载Linguise JS 脚本链接,以在 HTML 标头中显示带有标记和备用 URL 的语言切换器(用于 SEO 目的)。
要复制脚本链接,请从Linguise仪表板转到域设置并复制脚本链接。
ProcessWire 中加载此代码的最简单方法是将其添加到您的网站标题中或 部分。 ProcessWire CMS 有一个特定的文件来将脚本加载到标头。
它位于_main.php,您可以通过导航到site/templates/_main.php。 编辑脚本文件以在标题部分包含脚本链接。
现在应该自动加载带有标志的语言切换器。
默认情况下,语言切换器将显示在网站右上角的浮动位置。 欢迎您按照下一章中的说明进行自定义。
SEO 重要说明:您设置的语言数量对 SEO 有很大影响。 当您设置翻译语言时,如果您有大量索引页面 (>500),搜索引擎可能会花费大量时间来处理它们。 它可能会影响您的原始语言的 SEO。 这就是为什么我们建议首先添加最多 5 种语言,然后当它被编入索引时,您可以每月批量添加 3 种语言。
设置语言切换器
可以通过Linguise仪表板 > 设置 > 语言标志显示来自定义语言切换器。 这里的每一个修改都会反映在网站上。
在屏幕右侧,您可以预览语言切换器。 以下是您可以设置的元素:
- 3 种布局:并排、下拉或弹出
- 语言切换器位置
- 语言切换器内容
- 英语或母语的语言名称
- 旗帜形状和尺寸
- 颜色和盒子阴影
在ProcessWire内容中加载语言切换器
要在特定位置显示语言切换器,在ProcessWire内容中,应将位置设置为“In place”。 Linguise
中设置位置后,您可以添加下面的短代码以包含它。 单击下面的代码将其放入剪贴板。
添加后,在前端,您将在添加代码的 HTML 区域中显示标志和语言名称。
激活本地缓存系统选项
作为一种选择,您可以激活存储 URL 及其相关多语言内容的本地缓存系统,以更快地为页面提供服务。 本地缓存将节省Linguise服务器和您的网站服务器之间的一些数据传输。 仅当页面已翻译且尚未更新时才使用缓存。 优先保留的缓存将是浏览次数最多的多语言页面的缓存。
为了补充这一点,您可以定义以 MB 为单位存储的缓存量。 在以下示例中,缓存已激活并且要保留的缓存量为 500 MB。
/** Basic configuration **/
public $cache_enabled = true;
public $cache_max_size = 500; // In megabyte
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;