目录
技术要求
为了运行Linguise翻译脚本,您需要以下内容:
- 运行 PHP 7+ 和Laravel
- Apache、LiteSpeed、NGINX、IIS 服务器
- 在您的服务器配置中激活 URL 重写
- Laravel的根文件夹通常设置在“ public 在此文件夹中安装Linguise
1. 生成API密钥
API 密钥是在您的网站上激活翻译所需的。 基本上,API 密钥将检查在哪个域上激活了哪种语言,并允许生成神经翻译页面。
复制 API 密钥并将其保存在剪贴板中。
然后,通过单击“Script PHP”选项卡,您将获得我们将在此处详细说明的安装说明。
2.上传并连接Linguise翻译脚本
Linguise翻译脚本需要上传到您的服务器,在Laravel安装的文件夹中,可以在这里下载:
脚本下载完成后,解压并上传到Laravel安装根目录。
- 确保它位于Laravel的根目录(通常Laravel将根目录设置在“ public ”文件夹中,您可以在那里安装Linguise )
- 确保文件夹名为“ linguise ”(文件夹解压时的默认名称)
需要将 Linguise API 密钥复制到文件夹中: … / linguise /Configuration.php您上传到服务器的文件,编辑文件并在简单的引号之间复制您的 API 密钥,替换文本 REPLACE_BY_TOUR TOKEN Linguise
3. 设置语言 URL
语言的 URL 需要在 .htaccess 文件中配置,如果你的文件中有“RewriteBase /”,只需复制以下所有代码:
RewriteEngine On
RewriteRule ^linguise/linguise.php$ - [L]
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]
4. 激活Laravel上的语言切换器
语言切换器是用于选择所需语言的标志弹出窗口。 要加载它,您需要复制网站配置末尾给出的代码( Linguise仪表板)。
该脚本必须加载到由Laravel处理的 HTML 页面的头部。 然后将自动加载标志语言切换器。
默认情况下,语言切换器将显示在网站右上角的浮动位置。 欢迎您根据需要使用 CSS 对其进行自定义。
SEO 重要说明:您设置的语言数量对 SEO 有很大影响。 当您设置翻译语言时,如果您有大量索引页面 (>500),搜索引擎可能会花费大量时间来处理它们。 它可能会影响您的原始语言的 SEO。 这就是为什么我们建议首先添加最多 5 种语言,然后当它被编入索引时,您可以每月批量添加 3 种语言。
设置语言切换器
可以通过Linguise仪表板 > 设置 > 语言标志显示来自定义语言切换器。 这里的每一个修改都会反映在网站上。
在屏幕右侧,您可以预览语言切换器。 以下是您可以设置的元素:
- 3 种布局:并排、下拉或弹出
- 语言切换器位置
- 语言切换器内容
- 英语或母语的语言名称
- 旗帜形状和尺寸
- 颜色和盒子阴影
在Laravel内容中加载语言切换器
Laravel中的特定位置显示语言切换器,您应该将位置设置为“In place”。 Linguise
中设置位置后,您可以添加下面的短代码以包含它。 单击下面的代码将其放入剪贴板。
添加后,在前端,您将在添加代码的 HTML 区域中显示标志和语言名称。
Laravel页面的本地缓存系统
作为一种选择,您可以激活存储 URL 及其相关多语言内容的本地缓存系统,以更快地为页面提供服务。 本地缓存将节省Linguise服务器和您的网站服务器之间的一些数据传输。 仅当页面已翻译且尚未更新时才使用缓存。 优先保留的缓存将是浏览次数最多的多语言页面的缓存。
作为一个选项,您可以定义存储的缓存量(以 MB 为单位)。 在以下示例中,缓存已激活并且要保留的缓存量为 500MB:
/** Basic configuration **/
public $cache_enabled = true;
public $cache_max_size = 500; // In megabyte
Laravel平台的具体设置
在 Configuration.php 文件中,我们还有一个设置,允许传递 CMS 或非 CMS 的一些特定配置。 默认情况下,它是自动的,但支持团队可能会要求您对其进行个性化以使用一些特殊设置。
Laravel添加的代码,这是小写的 CMS 名称:
/** Basic configuration **/
/*
* Update the CMS value according to your CMS
* Available CMS are: laravel, prestashop
*/
public static $cms = 'laravel';
从 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 = '';
Laravel + Windows IIS 服务器上的自动翻译
在 Web.config 文件中添加与您的网站构建器相对应的行。
它应该在任何其他重定向之前设置,尤其是重定向到 PHP 主文件:
Laravel + 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;