hugo-theme-relearn/exampleSite/content/configuration/sitemanagement/multilingual/_index.en.md
2024-10-12 19:28:32 +02:00

2.7 KiB

+++ categories = ["howto"] description = "How to set up a multilingual site" options = ["disableLanguageSwitchingButton"] title = "Multilingual" weight = 2 +++

The Relearn theme works with Hugo's multilingual mode.

It supports many languages, including right-to-left languages.

{{% expand "Supported languages" %}}

  • Arabic
  • Simplified Chinese
  • Traditional Chinese
  • Czech
  • Dutch
  • English
  • Finnish
  • French
  • German
  • Hindi
  • Hungarian
  • Indonesian
  • Italian
  • Japanese
  • Korean
  • Polish
  • Portuguese
  • Romanian
  • Russian
  • Spanish
  • Swahili
  • Turkish
  • Vietnamese {{% /expand %}}

Translation by File Name

Here's how to make your site multilingual using translations by file name:

  1. Set up languages in your hugo.toml file:

    {{< multiconfig file=hugo >}} defaultContentLanguage = 'en'

    [languages] [languages.en] weight = 1 languageName = 'English' languageCode = 'en' title = 'My Website'

    [languages.pir] weight = 2 languageName = 'Pirrratish' languageCode = 'art-x-pir' languageDirection = 'rtl' title = 'Arrr, my Website' {{< /multiconfig >}}

  2. Duplicate your content files and add language codes to their file names:

    ├── content
    │   ├── first-chapter
    │   │   ├── first-page
    |   |   |   ├── _index.en.md
    |   |   |   └── _index.pir.md
    │   │   ├── second-page
    |   |   |   ├── index.en.md
    |   |   |   └── index.pir.md
    │   │   ├── third-page.en.md
    │   │   └── third-page.pir.md
    │   ├── _index.en.md
    │   └── _index.pir.md
    ├── themes
    │   └── hugo-theme-relearn
    │       └── ...
    └── hugo.toml
    

Translation by Content Directory

The theme also support translations by content directory which can be configured in a similar way. This is not used in further examples of this documentation.

Search Settings

Check the search configuration for multilingual options.

Turn Off Language Switching

{{% badge style="cyan" icon="gears" title=" " %}}Option{{% /badge %}} By default the theme shows a language switcher in the lower part of the menu.

To disable the language switcher set disableLanguageSwitchingButton=true

{{< multiconfig file=hugo >}} [params] disableLanguageSwitchingButton = true {{< /multiconfig >}}