ref: 29e786aac5b3674b26f24fae6a8dd6ad92a12137
parent: e764a6e638b8a9e31df6d929c071c5a289441735
author: Piotr Kowalczuk <p.kowalczuk.priv@gmail.com>
date: Thu Jun 25 07:46:09 EDT 2015
Proper parsing structured array from yaml based FrontMatter
--- a/hugolib/page.go
+++ b/hugolib/page.go
@@ -518,11 +518,21 @@
default: // handle array of strings as well
switch vvv := vv.(type) { case []interface{}:- var a = make([]string, len(vvv))
- for i, u := range vvv {- a[i] = cast.ToString(u)
+ if len(vvv) > 0 {+ switch vvv[0].(type) {+ case map[interface{}]interface{}: // Proper parsing structured array from yaml based FrontMatter+ p.Params[loki] = vvv
+ default:
+ a := make([]string, len(vvv))
+ for i, u := range vvv {+ a[i] = cast.ToString(u)
+ }
+
+ p.Params[loki] = a
+ }
+ } else {+ p.Params[loki] = []string{}}
- p.Params[loki] = a
default:
p.Params[loki] = vv
}
--
⑨