hugo/hugolib
Bjørn Erik Pedersen eb42774e58
Add support for a content dir set per language
A sample config:

```toml
defaultContentLanguage = "en"
defaultContentLanguageInSubdir = true

[Languages]
[Languages.en]
weight = 10
title = "In English"
languageName = "English"
contentDir = "content/english"

[Languages.nn]
weight = 20
title = "På Norsk"
languageName = "Norsk"
contentDir = "content/norwegian"
```

The value of `contentDir` can be any valid path, even absolute path references. The only restriction is that the content dirs cannot overlap.

The content files will be assigned a language by

1. The placement: `content/norwegian/post/my-post.md` will be read as Norwegian content.
2. The filename: `content/english/post/my-post.nn.md` will be read as Norwegian even if it lives in the English content folder.

The content directories will be merged into a big virtual filesystem with one simple rule: The most specific language file will win.
This means that if both `content/norwegian/post/my-post.md` and `content/english/post/my-post.nn.md` exists, they will be considered duplicates and the version inside `content/norwegian` will win.

Note that translations will be automatically assigned by Hugo by the content file's relative placement, so `content/norwegian/post/my-post.md` will be a translation of `content/english/post/my-post.md`.

If this does not work for you, you can connect the translations together by setting a `translationKey` in the content files' front matter.

Fixes #4523
Fixes #4552
Fixes #4553
2018-04-02 08:06:21 +02:00
..
pagemeta
testdata
testsite/content
404_test.go Spring test cleaning, take 2 2018-03-18 09:54:32 +01:00
alias.go
alias_test.go Spring test cleaning, take 2 2018-03-18 09:54:32 +01:00
author.go
case_insensitive_test.go Allow themes to define output formats, media types and params 2018-03-21 09:22:19 +01:00
config.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
config_test.go Allow themes to define output formats, media types and params 2018-03-21 09:22:19 +01:00
datafiles_test.go
disableKinds_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
embedded_shortcodes_test.go
fileInfo.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
gitinfo.go
hugo_info.go
hugo_info_test.go
hugo_sites.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
hugo_sites_build.go
hugo_sites_build_failures_test.go hugolib: Fix freeze in invalid front matter error case 2018-03-24 10:06:58 +01:00
hugo_sites_build_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
hugo_sites_multihost_test.go Spring test cleaning, take 2 2018-03-18 09:54:32 +01:00
language_content_dir_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
media.go
menu.go
menu_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
multilingual.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page_bundler.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page_bundler_capture.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page_bundler_capture_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page_bundler_handlers.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page_bundler_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page_collections.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page_collections_test.go
page_output.go
page_paths.go
page_paths_test.go
page_permalink_test.go
page_resource.go
page_taxonomy_test.go
page_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
page_time_integration_test.go
pageCache.go
pageCache_test.go
pageGroup.go
pageGroup_test.go
pages_language_merge.go
pages_language_merge_test.go
pages_related.go
pages_related_test.go
pageSort.go
pageSort_test.go
pagesPrevNext.go
pagesPrevNext_test.go
pagination.go
pagination_test.go
path_separators_test.go
permalinker.go
permalinks.go
permalinks_test.go
prune_resources.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
robotstxt_test.go Spring test cleaning, take 2 2018-03-18 09:54:32 +01:00
rss_test.go
scratch.go
scratch_test.go
shortcode.go
shortcode_test.go
shortcodeparser.go
shortcodeparser_test.go
site.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
site_benchmark_test.go
site_output.go
site_output_test.go
site_render.go
site_sections.go
site_sections_test.go
site_stats_test.go
site_test.go
site_url_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
siteJSONEncode_test.go
sitemap.go
sitemap_test.go
taxonomy.go
taxonomy_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
template_engines_test.go
template_test.go
testhelpers_test.go Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
translations.go