hugo/tpl
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
..
cast tpl: Add float template function 2017-09-28 16:53:18 +02:00
collections Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
compare Properly handle -DEV suffix when comparing Hugo versions 2018-02-22 17:16:42 +01:00
crypto all: Update import paths to gohugoio/hugo 2017-06-13 18:42:45 +02:00
data Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
encoding all: Update import paths to gohugoio/hugo 2017-06-13 18:42:45 +02:00
fmt tpl: Add errorf template function 2017-10-03 07:59:51 +02:00
images tpl/images: Close image file 2017-11-25 18:38:33 +01:00
inflect vendor: Fix Humanize for multi-byte runes 2017-11-28 21:16:01 +01:00
internal all: Fix spelling 2017-08-07 20:19:24 +02:00
lang Add a way to merge pages by language 2018-03-16 10:10:01 +01:00
math tpl/math: Refactor Mod with cast 2017-10-30 21:55:36 +01:00
os Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
partials tpl/partials: Fix the lock contention in cached partial 2017-11-16 11:59:45 +01:00
safe Run gofmt to get imports in line vs gohugoio/hugo 2017-06-13 19:12:10 +02:00
strings tpl/strings: Fix broken test 2017-12-17 18:06:55 +01:00
time tpl/time: Add time.Duration and time.ParseDuration template funcs 2017-09-09 09:43:00 +02:00
tplimpl Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
transform Add support for a content dir set per language 2018-04-02 08:06:21 +02:00
urls Add support for multiple staticDirs 2017-11-17 11:01:46 +01:00
template.go metrics: Add simple template metrics feature 2017-09-26 20:03:04 +02:00