logo

额外区块类型 (EBT) - 全新的布局构建器体验❗

额外区块类型 (EBT) - 样式化、可定制的区块类型:幻灯片、标签页、卡片、手风琴等更多类型。内置背景、DOM Box、JavaScript 插件的设置。立即体验布局构建的未来。

演示 EBT 模块 下载 EBT 模块

❗额外段落类型 (EPT) - 全新的 Paragraphs 体验

额外段落类型 (EPT) - 类似的基于 Paragraph 的模块集合。

演示 EPT 模块 滚动

滚动

2.8. 区域与语言:将 Drupal 从英文翻译为其他语言。

18/10/2025, by Ivan

Drupal 拥有强大的多语言翻译功能。让我们看看如何为网站添加一种新语言,例如德语。在此之前,你需要确保已启用以下模块:LanguageConfiguration TranslationContent TranslationInterface Translation

Drupal 8 region and language

现在我们来逐一查看该部分中的所有设置。

区域设置(Regional settings)

Drupal 8 language translation

这一部分基本上都很直观,但建议将每周的第一天改为星期一。你还可以允许用户在注册时选择时区(或关闭该选项)。当网站涉及时间相关功能(例如事件 Events)时,这非常有用——每个用户都可以在自己的时区中查看事件时间。

日期与时间格式(Date and time formats)

我们可以通过管理面板自定义日期格式。例如,在新闻内容中通常需要显示“日-月-年”的格式。我们来设置一下。

drupal 8 date and time formats

点击 +Add format 按钮,为新闻添加一个新格式。输入格式字符串 d-m-Y

drupal 8 format date

关于日期格式字符串的详细说明,可以参考 PHP 官方手册:

http://php.net/manual/ru/function.date.php

现在,我们可以将此日期格式应用于所有日期字段以及其他日期输出。

语言(Languages)

Drupal 8 languages

我们来添加德语(German)。

drupal 8 add language

添加语言后,Drupal 会开始下载并更新该语言的翻译文件。此过程需要联网,并可能花费一些时间。

完成后,我们的网站就添加了新语言。你可以启用并切换到德语,确认一切正常。

Drupal 8 German

我们再切换回英文语言。如果进入「Detection and selection(检测与选择)」选项卡,可以设置网站语言的检测方式。最推荐的方式是通过 页面 URL

drupal 8

打开德语语言的编辑页面:

drupal 8

可以看到这里有一个语言代码(Language code)设置。该代码会添加到页面 URL 中,用来识别页面语言。例如:

http://site/de/node/10 —— 表示德语页面。

http://site/en/node/10 —— 表示英语页面。

对于默认语言(例如英语),可以省略语言代码:

http://site/node/10 —— 同样表示英文页面。

此外,如果进入内容类型(例如 Article)的编辑页面:

/admin/structure/types/manage/article

drupal 8 languages

你可以启用“创建节点时选择语言”的选项。

我们不仅可以为节点选择语言,还可以为区块(blocks)、用户(users)、评论(comments)以及其他实体设置语言。

例如,在添加区块时,我们可以选择该区块适用的语言:

Drupal 8 translation

用户界面翻译(User Interface Translation)

你可能已经注意到,Drupal 并不会 100% 翻译所有界面文字:

Drupal 8 interface translation

对于未被自动翻译的文本,我们可以使用「手动翻译(Manual translation)」功能:

/admin/config/regional/translate

Drupal 8 line feed

输入英文短语后,Drupal 会列出所有包含该短语的字符串。填写翻译内容并点击页面底部的「保存翻译(Save translation)」按钮。

通过这种方式,我们可以在整个 Drupal 系统中逐条翻译字符串。

你还可以通过「导出(Export)」选项卡手动导出翻译:

Drupal 8 language export

Drupal 会导出一个 .po 文件,你可以在其他网站上导入该文件(通过「导入(Import)」选项卡):

drupal 8 import translations

最后,在「设置(Settings)」选项卡中,你可以配置翻译更新检查的频率。例如,每月检查一次。Drupal 会提示你哪些文本尚未翻译。由于每次安装新模块都会新增未翻译的字符串,翻译工作实际上是一个持续的过程。

drupal 8 settings