多语言站点功能使用教程一:独立多站点架构多语言方式

📅 👁️ 306

从 AnQiCMS v3.4.8 版开始,支持更强大的多语言站点功能。

AnQiCMS 的多语言功能支持两种方式实现,一是使用独立多站点架构(适合大型/高定制化需求),二是单站翻译插件架构(适合中小型/敏捷迭代)。

下面将带你使用AnQiCMS的多语言功能:

方式1:独立多站点架构(适合大型/高定制化需求)

这种方式灵活性较高,但对于站点运营人员来说,要求也较高,需要更多的配置和代码开发工作,文章的同步和翻译也需要处理。

操作步骤

第一步:启用多语言站点功能

  1. 登录AnQiCMS后台管理界面。
  2. 登录安企CMS官网账号。 > 注:如果未登录安企CMS官网账号,则无法使用HTML页面翻译功能。

登录安企CMS官网

  1. 进入【功能管理】,搜索“多语言站点支持”。

  2. 点击进入多语言站点支持功能界面。 进入多语言站点支持

  3. 接着,在配置界面中,进行配置:

    • 是否开启多语言站点支持 -> 是
    • 站点存储处理方式 -> 每个语言独立站点存储
    • 多站点展示方式 -> 独立域名|独立目录
    • 主站点语言 -> 中文
    • 是否自动翻译 -> 是

配置 点击【提交】按钮,保存配置,这样才能进行下一步操作。

注:如果开启自动翻译功能,默认会使用安企官方翻译接口。同时你也可以配置自定义的翻译接口。在功能里搜索【翻译配置】,在翻译配置中,选择合适的翻译接口配置。

配置

第二步:创建多语言子站点

  1. 在多语言站点列表中,点击【添加站点】按钮,来添加多语言站点。 首次添加的时候,子站点还不存在,因此需要先添加站点。如图: 创建主子站点

注意:添加站点的过程中,需要注意以下一些问题:站点目录,就按对应语言命名即可。 数据库复用问题,如果你的主站点不是使用数据库 root 账号和密码安装的话,则这里不能选择【复用默认数据库账号信息】,而是需要选择【新账号】来填写正确的数据库账号信息。

创建主子站点

  1. 创建完成后,回到多语言站点添加界面,选择站点中,选择刚创建好的站点,并选择对应的语言,如图: 创建主子站点

第三步:内容同步处理

  1. 当首次创建好多语言子站点后,子站点还没有同步内容,需要手动触发同步。在多语言站点列表中,可以看到同步按钮,点击【同步内容】按钮,来手动同步内容(全量同步或增量同步),第一次是全量同步。 创建主子站点 > 同步的过程中,如果上面选择了自动翻译,则它会在这个过程中一面同步,一面翻译,因此如果内容较多的话,同步过程用时会比较久。

创建主子站点

  1. 同步完成后,还有可能存在部分内容没有同步翻译成功的情况,因此你还需要切换到对应语言站点下,对内容进行检查,并手动对内容进行翻译: 创建主子站点

第四步:模板翻译与多语言切换

  1. 模板支持多语言标签,使用方法:{% tr 变量名称 %}。 使用翻译标签,可以使模板支持多语言功能,模板的多语言功能启用方法如下: 在模板目录下创建 locales 目录,然后创建一个文件夹,文件夹的名称是当前语言的代码,例如 zh-CN 或 zh-TW 、en 等。在文件夹里创建一个yml文件,例如 default.yml。目录结构形式如下:

    ./locales
    ├── en
    │   └── default.yml
    ├── ja
    │   └── default.yml
    ├── nl
    │   └── default.yml
    └── zh-CN
      └── default.yml
    

    中文的 locales/zh-CN/default.yml 文件内容如下:

    "yourLocation": "您的位置"
    

    英文的 locales/en/default.yml 文件内容如下:

    "yourLocation": "Your Location"
    

    调用方法:{% tr “yourLocation” %},在模板解析后,就会相应的显示不同语言的内容,如中文显示成 您的位置,英文显示成 Your location

  2. 在模板中,添加多语言切换代码:

      {%- languages languages %}
    <div class="languages">
      {%- for item in languages %}
      <a href="{{item.Link}}" class="{% if item.IsCurrent %}active{% endif %}" data-pjax="false">
         <div class="language-item">
               {%- if item.LanguageIcon %}
               <img class="language-icon" src="{{item.LanguageIcon}}" />
               {%- else %}
               <span class="language-icon">{{item.LanguageEmoji}}</span>
               {% endif %}
               <span>{{item.LanguageName}}</span>
         </div>
      </a>
      {% endfor %}
    </div>
    {%- endLanguages %}
    

第四步:SEO配置

  1. 在HTML头部添加<html lang="en">标签,当然,不同的语言使用不同的lang,如中文,就使用 lang="zh-CN",如果是多语言模板,通过调用的方式来设置lang,则这么写:<html lang="{% system with name='Language' %}">
  2. 使用hreflang标签关联不同语言版本页面。 head 部分的 harflang:
    
    {%- languages websites %}
    {%- for item in websites %}
    <link rel="alternate" href="{{item.Link}}" hreflang="{{item.Language}}">
    {%- endfor %}
    {%- endLanguages %}
    

前端效果

通过上面的配置后模板修改后,前端就可以看到效果了,如图,右上角出现了多语言切换菜单: 忽略部分标签

我们尝试切换到英文,可以看到页面已经自动翻译了: 忽略部分标签

至此,多语言功能就配置完成了。欢迎你多多使用,多多测试,如有发现问题,及时反馈,我们会根据并尽快解决。

相关文章

安企CMS多语言站点功能介绍

从 AnQiCMS v3.4.7 版开始,支持更强大的多语言站点功能。 AnQiCMS 的多语言功能支持两种方式实现,一是使用独立多站点架构(适合大型/高定制化需求),二是单站翻译插件架构(适合中小型/敏捷迭代)。 两种方式实现的多语言功能,分别有着各自的优缺点,具体请看下面的说明。 方式1:独立多站点架构(适合大型/高定制化需求) 技术实现细节 主-子站点同步机制

2025-03-29

AnqiCMS(安企CMS)如何使用滴滴友链自动上链功能

交换友情链接是每个做网站都要经历的事情。很多朋友在交换友情链接的事情上花费了大量的功夫,奈何交换效率比较低下,导致时间白白浪费掉了。滴滴友链平台(https://didi.seowhy.com/)推出了自动交换友链的功能,可以自动的完成友情链接交换,减轻了友情链接交换的大量工作。作为一款功能完备的C

2022-11-08

链接推送使用帮助

搜索引擎链接推送功能的使用,可以让你发布的文档,及时的告知各大搜索引擎,让他们的蜘蛛及时过来抓取页面,达到促进页面收录效果。目前系统支持的主动推送的搜索引擎有:百度搜索、必应搜索。百度搜索主动推送接口需要使用百度搜索主动推送接口你需要从百度搜索资源平台 https://ziyuan.baidu.co

2022-06-21

伪静态规则使用帮助

伪静态规则可以让你能够根据实际的需要,来定义网站的url组成形式。为了方便用户,减少配置的麻烦,系统内置了4种现成的伪静态规则,只需要选择就可以直接使用。默认的伪静态规则有:数字模式数字模式下,文档详情、文档列表、单页详情,文档标签,都使用{id}来作为URL生成依据,通常做中文站使用较多。模型命名

2022-06-21

多语言站点功能使用教程二:单站翻译插件架构多语言方式

从 AnQiCMS v3.4.8 版开始,支持更强大的多语言站点功能。 AnQiCMS 的多语言功能支持两种方式实现,一是使用独立多站点架构(适合大型/高定制化需求),二是单站翻译插件架构(适合中小型/敏捷迭代)。 下面将带你使用AnQiCMS的多语言功能: ▶ 方式2:单站翻译插件架构(适合中小型/敏捷迭代) 操作步骤 第一步:启用多语言站点功能 登录AnQiCMS后台管理界面。

2025-03-29